Arquivo

Textos com Etiquetas ‘CentOS’

Zimbra: Atualizando o Clamav

16, abril, 2010

Opa,

Recentemente (15/04) o software anti-vírus Clamav descontinuou as versões anteriores a 0.95.x (mais informações aqui), logo após essa operação os servidores que rodavam versões anteriores começaram a apresentar problemas, quando tentavam realizar a atualização das vacinas corrompiam o banco de dados e com isso os e-mail’s não eram entregues. Para solucionar esse problema foi necessário atualizar a versão do software, segue abaixo como consegui atualizar essa tarefa com o Zimbra em um servidor CentOS 5.4.

Antes de tudo recomendo a realização de um backup do seu sistema, pois como diz o ditado, “melhor prevenir…”, após essa tarefa faça o download do código (source) da última versão estável no site do Clamav (nesse post utilizei a versão 0.96).

Feito o download vamos instalar as dependências, descompactá-lo e executar os passos para a compilação e instalação do pacote:

# yum install gmp-devel bzip2-devel zlib-devel gcc
# tar -xvf clamav-0.96.tar.gz
# cd clamav-0.96
# ./configure --prefix=/opt/zimbra/clamav-0.96 --with-user=zimbra --with-group=zimbra
# make
# make check
# make install

Feita a instalação compare os antigos arquivos de configuração (clamd.conf e freshclam.conf) com os novos arquivos instalados, caso necessário realize os ajustes.

# cd /opt/zimbra/clamav-0.96/etc/
# mv clamd.conf clamd.conf.orig
# mv freshclam.conf freshclam.conf.orig
# cp /opt/zimbra/conf/{clamd,freshclam}.conf .
# diff clamd.conf clamd.conf.orig
# diff freshclam.conf freshclam.conf.orig

Pare o serviço:

# su - zimbra -c "zmcontrol stop"

Remova o link simbólico do clamav na pasta do zimbra e crie um novo link apontando para a nova versão:

# cd /opt/zimbra
# rm clamav
# ln -s /opt/zimbra/clamav-0.96 /opt/zimbra/clamav

Agora crie a pasta onde são armazenados os banco de dados das vacinas e ajuste as permissões:

# mkdir /opt/zimbra/clamav/db
# chown -R zimbra:zimbra /opt/zimbra/clamav-0.96

Atualize as vacinas e inicie o serviço:

# su - zimbra -c "/opt/zimbra/clamav/bin/freshclam"
# su - zimbra -c "zmcontrol start"

Execute o comando abaixo para ver se todos os serviços estão executando:

# su - zimbra -c "zmcontrol status"
Host meuservidor.exemplo.com
antispam                Running
antivirus               Running
ldap                    Running
logger                  Running
mailbox                 Running
mta                     Running
snmp                    Running
spell                   Running
stats                   Running

Caso o serviço antivirus não inicie verifique o log em /opt/zimbra/log/clamd.log.

Abraço!

Fonte: http://wiki.zimbra.com/wiki/ClamAV_-_Updating_Version

Luiz Agostinho Linux , , ,

CentOS: Suporte a partições NTFS

1, março, 2010

Opa,

Recentemente precisei trabalhar com um HD externo para realizar o backup do servidor e tive problemas com os arquivos maiores que 4GB (FAT32 não suporta arquivos maiores que esse tamanho), para solucionar esse problema foi necessário formatar a partição para NTFS, o problema é que o CentOS 5.4 não tem suporte para esse tipo de partição, foi necessário instalar o fuse + ntfs-3g para poder utilizar a partição. Existe uma outra opção para obter esse suporte a NTFS, bastando instalar o kernel do repositório centosplus, mas eu preferi utilizar o fuse pois não precisa reiniciar o servidor e não correr o risco de ocorrer algum problema com o novo kernel.

Caso não possua o repositório do rpmforge (DAG) instalado no seu servidor, faça isso utilizando os comandos abaixo:

# wget -c http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
# rpm -Uvh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

Caso (assim como eu) deseje deixar esse repositório desativado, altere a variável enable para 0:

# vim /etc/yum.repos.d/rpmforge.repo

enabled = 0

Instale os pacotes fuse e fuse-ntfs-3g e adicione as entradas no arquivo fstab para montagem da partição:

# yum –enablerepo=rpmforge install fuse fuse-ntfs-3g
# vim /etc/fstab

/dev/sda1       /media/backup    ntfs-3g   rw,umask=0000,defaults  0 0

Pronto! Agora é só montar a partição e realizar os testes:

# mount /media/backup

Abraço!

Fonte: http://wiki.centos.org/TipsAndTricks/NTFS

Luiz Agostinho Linux , , ,

CentOS: Solucionando problema com o udev pós upgrade

18, janeiro, 2010

Opa,

Essa dica é para quem estiver com o mesmo problema no CentOS e o udev que eu tive. Após um upgrade para a versão 5.4 o sistema parava no carregamento do udev e demorava entre 4 a 5 minutos, retornando a mensagem abaixo:

Starting udev: Wait timeout. Will continue in the background [FAILED]

Verificando no Google encontrei a solução na lista de bugs do CentOS, bastou editar o arquivo /etc/security/console.perms.d/50-default.perms e fazer a seguinte alteração:

<console> 0600 <sound> 0660 root.audio

Para:

<console> 0600 <sound> 0660 root

Feito isso bastou reiniciar o sistema para tudo voltar a funcionar normalmente. Fica ai a dica, abraço!

Fonte: http://bugs.centos.org/view.php?id=4049

Luiz Agostinho Linux , , ,

CentOS: Instalando mod_security

15, dezembro, 2009

Opa,

Nesse post iremos instalar e ativar o suporte a mod_security no CentOS 5.4, o mod_security é útil para proteger o Apache contra diversos tipos de ataques a aplicações web, agindo como uma camada de proteção.

Para realizar a instalação do mod_security no CentOS existem duas formas, compilar o código-fonte ou instalar o pacote binário do repositório EPEL (Extra Packages for Enterprise Linux). Como já possuo o repositório EPEL (e por preguiça também lógico) escolhi instalar o pacote binário, segue abaixo os procedimentos utilizados.

Caso não possua o repositório EPEL ativado no seu sistema, instale-o com o comando abaixo:

Versão 32 bits
# rpm −Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel−release−5−3.noarch.rpm

Versão 64 bits
# rpm −Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel−release−5−3.noarch.rpm

Antes de instalar o pacote do mod_security no meu ambiente, CentOS 5.4 64 bits, foi necessário instalar o pacote lua (dica que encontrei no comentário do Zigzacom na fonte), portanto, caso encontre erros de dependência da biblioteca liblua-5.1.so durante a instalação execute o comando abaixo:

# rpm −ivh http://mirrors.kernel.org/fedora−epel/5Server/x86_64/lua−5.1.2−1.el5.x86_64.rpm

Instale o pacote do mod_security com o comando abaixo:

# yum install mod_security

O arquivo de configuração principal do mod_security encontra-se em /etc/httpd/conf.d/mod_security.conf, no diretório /etc/httpd/modsecurity.d/ encontram-se todos os outros arquivos de configuração do mod_security incluindo o arquivo /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf que deve ser ajustado de acordo com as suas necessidades. Os arquivos de log encontram-se em /var/log/httpd/modsec_debug.log e em /var/log/httpd/modsec_audit.log.

Após a instalação verifique no arquivo /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf se a opção SecRuleEngine está configurada para On:

# vim /etc/httpd/modsecurity.d/modsecurity_crs_10_config.conf

SecRuleEngine On

Agora basta reiniciar o serviço com o comando abaixo:

# service httpd restart

Nos logs do Apache pode ser verificado se o módulo foi devidamente carregado:

# tail -f /var/log/httpd/error_log

[Tue Dec 15 20:34:35 2009] [notice] caught SIGTERM, shutting down
[Tue Dec 15 20:34:44 2009] [notice] SELinux policy enabled; httpd running as context root:system_r:httpd_t
[Tue Dec 15 20:34:45 2009] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Dec 15 20:34:46 2009] [notice] ModSecurity for Apache/2.5.9 (http://www.modsecurity.org/) configured.
[Tue Dec 15 20:34:46 2009] [notice] Original server signature: Apache/2.2.3 (CentOS)
[Tue Dec 15 20:34:46 2009] [notice] Digest: generating secret for digest authentication ...
[Tue Dec 15 20:34:46 2009] [notice] Digest: done
[Tue Dec 15 20:34:47 2009] [notice] Apache/2.2.0 (Fedora) configured -- resuming normal operations

E após algumas tentativas segue um exemplo do mod_security em ação:

# tail -f /var/log/httpd/error_log

[Tue Dec 15 18:29:21 2009] [error] [client XX.XX.XX.XX] ModSecurity: Warning. Match of "rx ModSecurity" against "WEBSERVER_ERROR_LOG" required. [ile "/etc/httpd/modsecurity.d/modsecurity_crs_21_protocol_anomalies.conf"] [line "65"] [id "960913"] [msg "Invalid request"] [severity "CRITICAL"] [hostname "meu.site.com"]

Abraço!

Fonte: http://www.cyberciti.biz/faq/rhel-fedora-centos-httpd-mod_security-configuration/

Luiz Agostinho Linux , , , , ,

Solucionando update do python no CentOS 5.3

24, novembro, 2009

Opa,

Recetemente tive um pequeno problema com a atualização do pacote python no servidor CentOS 5.3 64 bits (não sei se esse problema ocorre na versão 32 bits), após executar um yum update no servidor recebia a seguinte mensagem abaixo:

# yum update

Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
* epel: lnx.apollo-hw.ro
* addons: mirror.stanford.edu
* extras: yum.singlehop.com
114 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package python.x86_64 0:2.4.3-24.el5_3.6 set to be updated
c5284ba3902d0cdd9036f5dcca56d91e9422e740-filelists.sqlit | 3.8 MB 00:38
--> Processing Dependency: /usr/lib64/python2.4 for package: gamin-python
--> Processing Dependency: /usr/lib64/python2.4 for package: libxml2-python
--> Finished Dependency Resolution
gamin-python-0.1.7-8.el5.x86_64 from installed has depsolving problems
--> Missing Dependency: /usr/lib64/python2.4 is needed by package
gamin-python-0.1.7-8.el5.x86_64 (installed)
libxml2-python-2.6.26-2.1.2.8.x86_64 from installed has depsolving problems
--> Missing Dependency: /usr/lib64/python2.4 is needed by package
libxml2-python-2.6.26-2.1.2.8.x86_64 (installed)
Error: Missing Dependency: /usr/lib64/python2.4 is needed by package
libxml2-python-2.6.26-2.1.2.8.x86_64 (installed)
Error: Missing Dependency: /usr/lib64/python2.4 is needed by package
gamin-python-0.1.7-8.el5.x86_64 (installed)

Ou seja, quebra de dependências! Nessa hora já estava pensando que ia ter que apelar para a remoção dos pacotes conflitantes, atualização e instalação dos pacotes necessários, etc… Mas não precisei fazer nada disso, para solucionar esse problema foi necessário apenas fazer um clean all e após isso tudo voltou a funcionar normalmente:

# yum clean all

Loaded plugins: fastestmirror, priorities
Cleaning up Everything
Cleaning up list of fastest mirrors

# yum update

Loaded plugins: fastestmirror, priorities
Determining fastest mirrors
* epel: fr2.rpmfind.net
* addons: centos.patan.com.ar
* extras: centos.patan.com.ar
epel | 3.4 kB 00:00
9427d656fcd15e62989f1a06fcfdc26f8475c941-primary.sqlite. | 2.7 MB 00:21
addons | 951 B 00:00
primary.xml.gz | 203 B 00:00
Zend | 951 B 00:00
primary.xml.gz | 13 kB 00:00
Zend 75/75
updates | 951 B 00:00
primary.xml.gz | 388 kB 00:00
updates 700/700
Zendce-noarch | 951 B 00:00
primary.xml.gz | 3.9 kB 00:00
Zendce-noarch 15/15
base | 1.1 kB 00:00
primary.xml.gz | 1.1 MB 00:00
base 3272/3272
extras | 1.1 kB 00:00
primary.xml.gz | 117 kB 00:01
extras 290/290
114 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package python.x86_64 0:2.4.3-24.el5_3.6 set to be updated
6ce911b005643bd26a281487119bdb746d551488-filelists.sqlit | 3.8 MB 01:29
filelists.xml.gz | 8.8 kB 00:00
filelists.xml.gz | 3.3 MB 00:00
filelists.xml.gz | 2.6 MB 00:00
filelists.xml.gz | 113 kB 00:00
filelists.xml.gz | 196 B 00:00
filelists.xml.gz | 176 kB 00:01
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package Arch Version Repository Size
================================================================================
Updating:
python x86_64 2.4.3-24.el5_3.6 updates 5.9 M

Transaction Summary
================================================================================
Install 0 Package(s)
Update 1 Package(s)
Remove 0 Package(s)

Total download size: 5.9 M
Is this ok [y/N]: y
Downloading Packages:
python-2.4.3-24.el5_3.6.x86_64.rpm | 5.9 MB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : python [1/2]
Cleanup : python [2/2]

Updated: python.x86_64 0:2.4.3-24.el5_3.6
Complete!

Fica ai a dica para quem passar pelo mesmo problema! Abraço!

Luiz Agostinho Linux , ,

Dica: Zend + PHP 5.2 + Firebird + CentOS 5.3 64bits

14, novembro, 2009

Opa,

Essa semana perdi passei um bom tempo lutando para colocar o módulo do Firebird para funcionar com o Zend + PHP 5.2 em um ambiente com CentOS 5.3 64 bits, mais precisamente ocorriam problemas com campos tipo BLOB. Após várias algumas tentativas sem sucesso, o Diego (vulgo Perebinhas) me mandou um comentário de um post, que ele ainda não me informou o link, falando algo sobre um problema para gerar o módulo com as versões do PHP superiores à 5.2.1, a versão que eu estava utilizando era 5.2.10 e já tinha testado com a última versão disponível também, após esse comentário resolvi testar!

# php -v

PHP 5.2.10 (cli) (built: Jun 22 2009 10:22:39)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v5.1, Copyright (c) 2003-2009, by Zend Technologies
- with Zend Data Cache v4.0, Copyright (c) 2004-2009, by Zend Technologies [loaded] [licensed] [disabled]
- with Zend Utils v1.0, Copyright (c) 2004-2009, by Zend Technologies [loaded] [licensed] [enabled]
- with Zend Optimizer+ v4.0, Copyright (c) 1999-2009, by Zend Technologies [loaded] [licensed] [disabled]
- with Zend Debugger v5.2, Copyright (c) 1999-2009, by Zend Technologies [loaded] [licensed] [enabled]

Baixe os fontes do PHP versão 5.2.1:

# wget -c http://museum.php.net/php5/php-5.2.1.tar.bz2

Descompacte e execute os comandos configure e make para gerar o módulo:

# tar -xvjf php-5.2.1.tar.bz2
# cd php-5.2.1
# ./configure –with-interbase=shared
# make

Opcional: Caso deseje execute o make test para verificar se existem erros com o módulo:

# make test

Agora copie o módulo interbase.so criado para a pasta de módulos do php:

# cp modules/interbase.so /usr/lib64/php/modules/

OBS.: No caso do Zend a pasta utilizada foi /usr/local/zend/lib/php_extensions/.

Edite o arquivo php.ini para que o módulo seja carregado:

# vim /etc/php.ini

extension=interbase.so

Para finalizar reinicie o Apache para que o módulo seja carregado:

# /etc/init.d/httpd restart

Agora é só fazer os testes! Abraço!

Luiz Agostinho Linux , , , ,

Fix DOCUMENT_ROOT no Apache usando mod_vhost_alias

10, setembro, 2009

Opa,

Quem usa o módulo mod_vhost_alias do Apache (ver post sobre esse assunto) e utiliza a variável DOCUMENT_ROOT já deve ter sofrido um pouco (assim como eu) para tentar encontrar a solução para esse problema, uma das soluções é utilizando a opção “php_admin_value auto_prepend_file” para ajustar o DOCUMENT_ROOT, mas isso traz alguns problemas, primeiro é um modo “feio” e segundo só serve para projetos em PHP, quando usarmos Ruby on Rails por exemplo não irá funcionar, então como solucionar? Pesquisando no bugzilla do Apache encontrei a solução, um patch que ajusta a variável DOCUMENT_ROOT de acordo com a variável VirtualDocumentRoot definida no arquivo de configuração, vamos a solução!

Antes de iniciarmos, vamos instalar o pacote que para criar o rpm:

# yum install rpm-build

Agora verifique qual a versão do seu servidor Apache (no meu caso utilizei a versão do patch para 2.2.2):

# httpd -v
Server version: Apache/2.2.3

Faça o download do patch no bugzilla do Apache https://issues.apache.org/bugzilla/show_bug.cgi?id=26052

Faça também o download do pacote src referente a versão do seu Apache e instale-o:

# wget -c http://mirror.centos.org/centos/5/os/SRPMS/httpd-2.2.3-22.el5.centos.src.rpm
# rpm -Uvh /backup/packages/httpd-2.2.3-22.el5.centos.src.rpm

Acesse o diretório dos fontes e descompacte o arquivo httpd-2.2.3.tar.gz:

# cd /usr/src/redhat/SOURCES
# tar -xvzf httpd-2.2.3.tar.gz

Acesse o diretório onde encontra-se o módulo mod_vhost_alias.c:

# cd httpd-2.2.3/modules/mappers/

Aplique o patch informando o local onde fez o download do mesmo (acima):

# patch < /root/mod_vhost_alias.c.diff

Volte ao diretório dos fontes (SOURCES) e compacte o diretório httpd-2.2.3 conforme abaixo:

# cd /usr/src/redhat/SOURCES
# tar -cvzf httpd-2.2.3.tar.gz httpd-2.2.3

Acesse o diretório SPECS e gere o pacote:

OBS.: Na minha compilação o sistema solicitou as seguintes dependências xmlto pcre-devel distcache-devel, instale-as via yum antes de compilar (Ex.: # yum install xmlto pcre-devel distcache-devel)!

# cd /usr/src/redhat/SPECS
# rpmbuild -bb httpd.spec

Como não precisamos de todo o pacote, acesse o diretório tmp para descompactar o rpm criado e copiar somente o módulo que desejamos:

OBS.: No meu sistema utilizei o caminho /usr/lib64 por ser 64bits, use o padrão (/usr/lib) caso não seja o seu caso!

# cd /tmp/
# rpm2cpio /usr/src/redhat/RPMS/x86_64/httpd-2.2.3-22.x86_64.rpm | cpio -d -i
# mv /usr/lib64/httpd/modules/mod_vhost_alias.so /usr/lib64/httpd/modules/mod_vhost_alias.so.orig
# mv /tmp/usr/lib64/httpd/modules/mod_vhost_alias.so /usr/lib64/httpd/modules/mod_vhost_alias.so

Edite o arquivo com os hosts virtuais dinâmicos e adicione a opção SetVirtualDocumentRoot que faz a “mágica”:

# vim /etc/httpd/conf.d/00_vhost.conf

...
<IfModule mod_vhost_alias.c>
SetVirtualDocumentRoot on
...
</IfModule>
...

Reinicie o Apache e faça seus testes!

# /etc/init.d/httpd restart

Abraço!

Fonte: http://www.edula.com/blog/?m=200603
Patch: https://issues.apache.org/bugzilla/show_bug.cgi?id=26052

Luiz Agostinho Linux , , ,

CentOS: Ativando SSL no Apache

1, setembro, 2009

Opa,

Esse post é sobre como gerar os certificados SSL no CentOS utilizando o OpenSSL e ativá-los no Apache para permitir conexões criptogradas ao seu servidor Web, para isso precisamos inicialmente instalar os pacotes necessários (caso ainda não estejam instalados):

# yum install mod_ssl openssl

Agora iremos gerar a chave privada:

# openssl genrsa -out ca.key 1024

Gere o arquivo CSR:

# openssl req -new -key ca.key -out ca.csr

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:BR
State or Province Name (full name) [Berkshire]:Alagoas
Locality Name (eg, city) [Newbury]:Maceio
Organization Name (eg, company) [My Company Ltd]:Exemplo
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your servers hostname) []:www.exemplo.com
Email Address []:admin@exemplo.com

Please enter the following extra attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

OBS.: Common Name deverá ser a URL do serviço, nesse exemplo www.exemplo.com.

Assine o arquivo CSR utilizando a chave privada para gerar o certificado:

# openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt

Mova os arquivos para a localização correta:

# mv ca.crt /etc/pki/tls/certs
# mv ca.key /etc/pki/tls/private/ca.key
# mv ca.csr /etc/pki/tls/private/ca.csr

Caso não utilize Virtual Host no seu servidor Apache, basta alterar as linhas abaixo no arquivo de configuração do SSL:

# vim /etc/httpd/conf.d/ssl.conf

SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key

E reinicie o serviço:

# /etc/init.d/httpd restart

Caso utilize Virtual Host será necessário alterar o arquivo de configuração do Virtual Host ao invés do arquivo de configuração do SSL, abra o arquivo e adicione no início do arquivo:

# vim /etc/httpd/conf.d/meu_vhost.conf

NameVirtualHost *:443

E após a configuração do <VirtualHost *:80> adicione a entrada referente ao SSL:

# vim /etc/httpd/conf.d/meu_vhost.conf


SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key

AllowOverride All

DocumentRoot /var/www/vhosts/exemplo.com/htdocs
ServerName www.exemplo.com

Feito isso reinicie o serviço:

# /etc/init.d/httpd restart

Pronto! Basta acessar seu servidor ou Virtual Host pelo seu navegador/browser preferido utilizando https para verificar o certificado criado!

Abraço!

Fonte: http://wiki.centos.org/HowTos/Https

Luiz Agostinho Linux , , ,

Lighttpd com PHP + MySQL no CentOS

14, agosto, 2009

Opa,

Já faz algum tempo que eu soube do Lighttpd (através do Enderson), mas sempre utilizei o Apache como serviço de hospedagem Web nos servidores que instalo por uma simples razão, sempre me serviu muito bem, mas ultimamente eu precisava de um simples serviço Web com suporte a PHP e MySQL para hospedar um único sistema, foi quando eu resolvi testar o Lighttpd!

Primeiro, caso ainda não esteja instalado, é necessário instalar os pacotes do MySQL e PHP:

# yum install mysql mysql-server php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

Ative o serviço do MySQL para iniciar durante o boot e inicie-o no sistema:

# chkconfig mysqld on && /etc/init.d/mysqld start

Agora é necessário alterar a senha do administrador do banco de dados MySQL, portanto execute os comandos abaixo:

# mysqladmin -u root password senha123
# mysqladmin -h hostname.servidor -u root password senha123

OBS.: Lembre-se de alterar a senha123 pela senha que deseja para o adminstrador do MySQL e altere hostname.servidor pelo hostname do seu servidor!

Agora vamos baixar e instalar o Lighttpd, para isso existem 2 formas, baixar os pacotes manualmente do repositório DAG, ou ativar o repositório DAG e instalar via YUM, eu escolhi baixar os pacotes manualmente e instalar via RPM (caso deseje a segunda opção basta dar uma olhada na fonte utilizada neste post). Execute os comandos abaixo:

# cd /tmp/
# wget -c http://dag.wieers.com/rpm/packages/lighttpd/lighttpd-1.4.18-1.el5.rf.x86_64.rpm
# wget -c http://dag.wieers.com/rpm/packages/lighttpd/lighttpd-fastcgi-1.4.18-1.el5.rf.x86_64.rpm
# rpm -Uvh lighttpd-1.4.18-1.el5.rf.x86_64.rpm
# rpm -Uvh lighttpd-fastcgi-1.4.18-1.el5.rf.x86_64.rpm

Agora iremos alterar dois arquivos de configuração, o primeiro é o php.ini que precisamos adicionar a linha abaixo no final do arquivo:

# vim /etc/php.ini

cgi.fix_pathinfo = 1

O segundo é o lighttpd.conf que precisa descomentar as linhas abaixo:

# vim /etc/lighttpd/lighttpd.conf

"mod_fastcgi",

fastcgi.server = ( ".php" =>
( "localhost" =>
(
"socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi"
)
)
)

Inicie o serviço do Lighttpd e ative-o na inicialização do sistema com os comandos abaixo:

# /etc/init.d/lighttpd start
# chkconfig lighttpd on

Pronto! Serviço instalado! Caso deseje crie um arquivo info.php para verificar se tudo está OK:

# vim /srv/www/lighttpd/info.php

phpinfo();
?>

Abraço!

Fonte: http://www.howtoforge.com/lighttpd_php5_mysql_centos5.0

Luiz Agostinho Linux , , , ,

Criando uma partição RAID via software

6, agosto, 2009

Olá,

Nesse post eu irei falar sobre como criar uma partição RAID via software no CentOS 5.3. Tive essa necessidade quando, após instalado o sistema, precisei adicionar mais uma partição RAID 1 via software, para os que não sabem o que é RAID esse post no Wikipedia explica detalhadamente.

Primeiro foi preciso criar as partições do tipo RAID nos dois HD’s:

# fdisk /dev/sda

Comando (m para ajuda): n
Comando - ação
e estendida
p partição primária (1-4)
p
Partição selecionada 4
Primeiro cilindro (3180-9729, padrão 3180):
Usando valor padrão 3180
Último cilindro ou +tamanho ou +tamanho M ou +tamanho K (3180-9729, padrão 9729):
Usando valor padrão 9729

Comando (m para ajuda): t
Número da partição (1-4): 4
Código hexadecimal (digite L para listar os códigos): fd
O tipo da partição 4 foi alterado para fd (Detecção automática de RAID Linux)

Comando (m para ajuda): w

Com isso temos uma das duas partições necessárias para criar o RAID 1 via software, agora repetimos o mesmo processo mudando o comando fdisk para o segundo disco:

# fdisk /dev/sdb

Repita o processo acima! Feito isso já temos nossas partições configuradas, é necessário agora criar o RAID, fazemos isso executando o comando abaixo:

# mdadm –create –verbose /dev/md3 –level=1 –raid-devices=2 /dev/sda4 /dev/sdb4

Onde:

/dev/md3 -> é o dispositivo RAID que será criado
–level=1 -> é o tipo de RAID desejado
–raid-devides=2 -> quantas partições farão parte do RAID
/dev/sda4 e /dev/sdb4 -> partições que farão parte do RAID

Após a criação vamos verificar se o status do dispositivo criado com o comando abaixo:

# mdadm –detail /dev/md3

/dev/md3:
Version : 00.90.03
Creation Time : Fri Jul 31 13:00:04 2009
Raid Level : raid1
Array Size : 209848960 (200.13 GiB 214.89 GB)
Used Dev Size : 209848960 (200.13 GiB 214.89 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 3
Persistence : Superblock is persistent

Update Time : Thu Aug 6 11:49:11 2009
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0

UUID : 66d0ebab:eb984d7b:ee7db6e1:ddee276b
Events : 0.2

Number Major Minor RaidDevice State
0 8 4 0 active sync /dev/sda4
1 8 20 1 active sync /dev/sdb4

Como podemos ver na linha 13 o State do dispositivo é clean, ou seja, já se encontra sincronizado e pronto para uso, caso esteja em modo sync devemos esperar a conclusão da sincronização dos dispositivos para passar ao próximo passo que é a formatação do dispositivo:

# mkfs.ext3 /dev/md3

Após formatado devemos verificar qual o UUID do dispositivo para podermos incluí-lo ao arquivo de configuração mdadm.conf:

# mdadm –query /dev/sdb4 –examine |grep UUID
UUID : 6630ebrb:ey984a7b:fe7db5e1:ddae276b

Com o UUID em “mãos” editamos o arquivo mdadm.conf e adicionamos o RAID ao sistema:

# vim /etc/mdadm.conf

ARRAY /dev/md3 level=raid1 num-devices=2 uuid=6630ebrb:ey984a7b:fe7db5e1:ddae276b

Depois basta adicionarmos a partição ao arquivo fstab do sistema:

# vim /etc/fstab

/dev/md3 /backup ext3 defaults 1 2

Pronto! Já temos nosso RAID 1 via software funcionando! Abraço!

Fonte: http://mymcp.blogspot.com/2009/07/creating-raid-5-array-in-software-on.html

 

Luiz Agostinho Linux , ,