HomeXAMPPNewsTeamProjectsDocsExtrasLinksContact

XAMPP para Linux FAQ

Autor: Kai 'Oswald' Seidler
Versão: Fri Aug 18 17:51:55 2006

1. Instalando e atualizando o XAMPP

Como atualizar o XAMPP?
Um erro ocorreu durante a atualização! O que foi agora?

2. Iniciando o XAMPP

Qual o significado destas mensagens quando o XAMPP é iniciado?
Eu tive o erro "/lib/libc.so.6: version `GLIBC_2.2' not found". O que foi agora?
Qual o segredo sobre o "Error 1"?
Apache não está inicializando. O que eu faço?
O que eu faço se aparecer o erro "Invalid argument: Could not set permissions on ssl_mutex"?
O que eu faço se aparecer o erro "Invalid argument: Unable to create scoreboard"?
O que eu faço se aparecer o erro »Invalid argument: Configuration failed«?
O que eu faço se aparecer o erro »The configuration file now needs a secret passphrase (blowfish_secret)«?
O que eu faço se aparecer o erro »cannot restore segment prot after reloc: Permission denied«?

3. Executando o XAMPP

Depois que eu reiniciei o Linux, o XAMPP deixou de funcionar! Como eu resolvo isto?
Como eu posso deixa minha instalação do XAMPP mais segura?
Como eu ativo o eAccelerator?
Como eu ativo a extensão OCI8/Oracle do PHP?
Como eu faço backup/restauro meu XAMPP?
O XAMPP funciona, mas nenhuma imagem aparece?

4. Parando o XAMPP

5. Desinstalando o XAMPP

6. Futuro do XAMPP

E sobre o suporte a JSP no XAMPP?
O que teremos no futuro?

1. Instalando e atualizando o XAMPP

* Como atualizar o XAMPP?

Se uma atualização existe, você deve usá-la: a) é muito menor que o pacote completo do XAMPP e b) suas configurações e arquivos HTML não serão substituídos.

1º Passo: Download

OK, o primeiro passo é bastante óbvio. Por favor, baixe o pacote de atualização na seção do XAMPP em nosso website. Por favor, note que apenas a versão correspondente pode atualizar o XAMPP.

Se você baixou a versão errada você verá uma mensagem de erro se você tentar atualizar.

2º Passo: Extraindo o arquivo

Agora extraia o pacote baixado:
tar xvfz xampp-linux-upgrade-x.x.x-y.y.y.tar.gz
A propósito: Não importa em qual sistema de arquivos você extraiu o pacote. Apenas tenha certeza que está na mesma máquina da instalação do XAMPP.

3º Passo: Iniciando a atualização

Depois de extrair o arquivo você pode iniciar o processo de inicialização. Primeiro tenha acesso root ao seu sistema, por exemplo, utilizando o comando 'su':
su
E agora inicie o processo de atualização:
xampp-upgrade/start
Agora você verá algo como isso:

Stopping XAMPP for Linux 0.9.6...
XAMPP: Stopping Apache...
XAMPP: Stopping MySQL...
XAMPP for Linux stopped.

Upgrading 0.9.6 to 0.9.7...
Installing new files...
Upgrading existing files...
patching file lampp/etc/httpd.conf

Successfully upgraded XAMPP.

XAMPP: Starting Apache...
XAMPP: Starting MySQL...
XAMPP started.

Pronto. Você atualizou o XAMPP com sucesso.

A propósito: a atualização irá para o XAMPP e iniciará o XAMPP quando a atualização terminar. O XAMPP será iniciado antes da atualização mesmo que não tenha sido.

4º Passo: Teste

Agora utilize seu navegador favorito e teste a nova versão do XAMPP acessando seu website. Por exemplo, simplesmente digite http://localhost na barra de endereços do seu navegador.

Depois de atualizar você pode apagar o diretóriolampp-upgrade; Ele não será mais necessário.

* Um erro ocorreu durante a atualização! O que foi agora?

Em circunstâncias especiais você pode ter a seguinte mensagem de erro:

The file /opt/lampp/XXX couldn't be upgraded.
The new version of the file could be found under: /opt/lampp/XXX-0.9.7

O programa de atualização cuidadosamente tentou atualizar um de seus arquivos de configuração. Na tentativa de atualizar, o programa teve de editar algumas linhas que você tinha modificado. Considerando que ninguém quer perder suas configurações, o programa de atualização decidiu por não modificar o arquivo, mas salvou um novo arquivo de configuração contendo as atualizações.

2. Iniciando o  XAMPP

* Qual o significado destas mensagens quando o XAMPP é iniciado?

Você pode ter três mensagens de erro enquanto o XAMPP é iniciado:

LAMPP-Apache is already running.
An Apache daemon is already running.

O script de inicialização do LAMPP não pôde iniciar o XAMPP-Apache por causa de uma instância do Apache já está sendo usada. Para iniciar o XAMPP corretamente, você deve parar este daemon.

LAMPP-MySQL is already running.
A MySQL daemon is already running.

Assim como o primeiro caso. O script de inicialização do LAMPP encontrou um daemon do MYSQL sendo utilizado em seu sistema. Para iniciar o LAMPP corretamente, você deve parar este daemon primeiro.

* Eu tive o erro "/lib/libc.so.6: version `GLIBC_2.2' not found". O que foi agora?

/opt/lampp/bin/XXX: /lib/libc.so.6: version `GLIBC_2.2' not found (required by XXX)

Seu sistema Linux é muito antigo. O XAMPP precisa de uma distribuição Linux que utilize a versão glibc 2.1.

* Qual o segredo sobre o "Error 1"?

Boa questão :) Este erro pode ter múltiplas razões. O Apache mostra este erro por diversas circunstâncias. Para encontrar a razão exata nós temos de explorar o:
tail -2 /opt/lampp/logs/error_log
Se você encontrar "Invalid argument: Could not set permissions on ssl_mutex" or "Invalid argument: Unable to create scoreboard" dê um olhada nas respostas abaixo. Se você encontrar outra mensagem de erro, por favor, envie um e-mail para mim. Talvez possamos resolver o problema juntos. Meu endereço de e-mail é: oswald@apachefriends.org.

* Apache não está inicializando. O que eu faço?

Boa questão :) Este erro pode ter múltiplas razões. O Apache mostra este erro por diversas circunstâncias. Para encontrar a razão exata nós temos de explorar o:
tail -2 /opt/lampp/logs/error_log
Se você encontrar "Invalid argument: Could not set permissions on ssl_mutex" ou "Invalid argument: Unable to create scoreboard" dê um olhada nas respostas abaixo. Se você encontrar outra mensagem de erro, por favor, envie um e-mail para mim. Talvez possamos resolver o problema juntos. Meu endereço de e-mail é: oswald@apachefriends.org.

* O que eu faço se aparecer o erro "Invalid argument: Could not set permissions on ssl_mutex"?

A mensagem de erro completa é:

[error] (22)Invalid argument: Could not set permissions on ssl_mutex; check User and Group directives

Neste caso, você deve mudar a diretiva de Grupo (linha 318) no /opt/lampp/etc/httpd.conf.

Você encontrará algo como:

Group ...

Mude o "..." para "nobody", "nogroup" ou #-1. Uma destas três possibilidades deverá funcionar.

* O que eu faço se aparecer o erro "Invalid argument: Unable to create scoreboard"?

A mensagem de erro completa é:

[crit] (22)Invalid argument: Unable to create scoreboard (anonymous shared memory failure)

Neste caso você tem que remover o # na frente da diretiva Scoreboard (linha 71) no /opt/lampp/etc/httpd.conf.

Você encontrará algo como:

#ScoreBoardFile logs/apache_runtime_status

Simplesmente remova o # no início desta linha:

ScoreBoardFile logs/apache_runtime_status

Agora esta mensagem de erro não o incomodará novamente.

* O que eu faço se aparecer o erro »Invalid argument: Configuration failed«?

Neste caso, o Apache é incapaz de pegar o endereço IP de seu host name. Ele deve funcionar normalmente mas às vezes (pela maior parte se você estiver utilizando DHCP) esta situação pode acontecer.

Solução:

Simplesmente digite o seguinte comando (por favor, use copiar e colar os caracteres ' são obrigatórios):

echo 127.0.0.1 `hostname` >> /etc/hosts

Isto irá corrigir o erro de configuração de seu sistema e o erro »Configuration failed« deverá desaparecer.

* O que eu faço se aparecer o erro »The configuration file now needs a secret passphrase (blowfish_secret)«?

Esta mensagem aparece desde o lançamento da versão 1.2 do XAMPP. Desde a versão 2.5.2, o phpMyAdmin suporta a encriptação de senhas salvas em cookies.

Solução:

Edite o config.inc.php na linha 60. Você encontrará este arquivo no diretório do phpmyadmin de sua instalação do XAMPP. Esta linha deverá ser o seguinte:

$cfg['blowfish_secret'] = '';

Digite nesta linha uma senha ou uma frase, por exemplo:

$cfg['blowfish_secret'] = 'holla';

Isto é tudo. Você agora pode usar o phpMyAdmin normalmente.

* O que eu faço se aparecer o erro »cannot restore segment prot after reloc: Permission denied«?

Eu presumo que você esteja usando o Fedora. Desde a versão 4 - eu acho - SELinux é ativado por padrão e isto previne a inicialização correta do XAMPP.

Solução:

No momento eu conheço apenas uma solução - desativando o SELinux:

setenforce 0

Agora o XAMPP funcionará normalmente. Se você conhecer uma solução melhor, por favor, envie um e-mail para mim. Eu não sou expert em SELinux e tudo o que sei sobre o SELinux é como desativá-lo. ;)

3. Executando o XAMPP

* Depois que eu reiniciei o Linux, o XAMPP deixou de funcionar! Como eu resolvo isto?

Correto. Isto é um comportamento normal do Linux (que se aplica a outros sistemas baseados em Unix). É trabalho do administrador fazer um programa ser carregado na inicialização.

Não há uma maneira padrão para configurar o processo de boot de um sistema Linux, mas a maioria deve permitir você a carregar o XAMPP na inicialização do sistema usando os passos seguintes.

  1. Primeiro, ache o modo de operação atual da máquina (runlevel).
    Simplesmente digite egrep :initdefault: /etc/inittab.
    Você deverá ver uma lista contendo um número entre dois pontos.
    Na maioria dos casos 3 ou 5 (2 se você estiver usando o Debian).

  2. Vá ao diretório que configura este runlevel. Se por exemplo seu runlevel for 3, então você tem de mudá-lo no diretório /etc/rc.d/rc3.d

    Se o sistema não disponibilizar o /etc/rc.d/rc3.d por favor, tente também o /etc/init.d/rc3.d and /etc/rc3.d.

  3. Agora execute a configuração digitando:

    ln -s /opt/lampp/lampp S99lampp
    ln -s /opt/lampp/lampp K01lampp

Agora o XAMPP deverá iniciar e parar automaticamente se você iniciar ou desligar a máquina.
No OpenSuSE 10.0 é um pouco estranho: Você precisa configurar um link simbólico de /etc/init.d/lampp para /opt/lampp/lampp:

ln -s /opt/lampp/lampp /etc/init.d/lampp

E utilizar o editor de runlevel (modo expert) do YaST para ativar o XAMPP para runlevels específicos.

* Como eu posso deixa minha instalação do XAMPP mais segura?

Na instalação padrão, o XAMPP não vem com as senhas configuradas e não é recomendável ser acessado por outros (ex.: Internet).

Simplesmente digite o seguinte comando (como root) para iniciar uma checagem simples de segurança:

/opt/lampp/lampp security

Agora você deverá ver as seguintes informações (as entradas do usuário estão em negrito):

LAMPP: Quick security check...
LAMPP: Your LAMPP pages are NOT secured by a password.
LAMPP: Do you want to set a password? [yes] yes (1)
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Password protection active. Please use 'lampp' as user name!
LAMPP: MySQL is accessable via network.
LAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] yes
LAMPP: Turned off.
LAMPP: Stopping MySQL...
LAMPP: Starting MySQL...
LAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
LAMPP: Do you want to set a password? [yes] yes
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Setting new MySQL pma password.
LAMPP: Setting phpMyAdmin's pma password to the new one.
LAMPP: MySQL has no root passwort set!!!
LAMPP: Do you want to set a password? [yes] yes
LAMPP: Write the passworde somewhere down to make sure you won't forget it!!!
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Setting new MySQL root password.
LAMPP: Setting phpMyAdmin's root password to the new one.
LAMPP: The FTP password is still set to 'lampp'.
LAMPP: Do you want to change the password? [yes] yes
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Reload ProFTPD...
LAMPP: Done.

(1) Atribuindo uma senha irá proteger as páginas de demonstração do XAMPP (http://localhost/xampp/). O usuário é o 'lampp'!

Depois de concluído, sua instalação do XAMPP será mais "segura". De minha parte, não tenho idéia do que pode ser inseguro.

* Como eu ativo o eAccelerator?

(Desde a versão 1.2.12 do XAMPP para Linux)

Para ativar o eAccelerator simplesmente encontre as seguintes linhas no /opt/lampp/etc/php.ini:

;extension="eaccelerator.so"
;eaccelerator.shm_size="16"
;eaccelerator.cache_dir="/opt/lampp/tmp/eaccelerator"
;eaccelerator.enable="1"
;eaccelerator.optimizer="1"
;eaccelerator.check_mtime="1"
;eaccelerator.debug="0"
;eaccelerator.filter=""
;eaccelerator.shm_max="0"
;eaccelerator.shm_ttl="0"
;eaccelerator.shm_prune_period="0"
;eaccelerator.shm_only="0"
;eaccelerator.compress="1"
;eaccelerator.compress_level="9"

Remova o ponto-e-vírgula no início de cada linha e reinicie o XAMPP. O eAccelerator agora está ativado. Para maiores informações sobre o eAccelerator, visite a página do eAccelerator: http://eaccelerator.net.

* Como eu ativo a extensão OCI8/Oracle do PHP?

(Desde a versão 1.3 do XAMPP para Linux)

Para ativar a extensão OCI8/Oracle do PHP, por favor, execute o seguinte comando:

/opt/lampp/lampp oci8
Você verá algo como isso:

Please enter the path to your Oracle installation:
ORA_HOME [/opt/oracle/OraHome1]
installing symlinks...
patching php.ini...
OCI8 add-on activation likely successful.
LAMPP: Stopping Apache with SSL...
LAMPP: Starting Apache with SSL...

Agora a extensão deverá ser ativada. Eu tive apenas algumas chances de testar esta funcionalidade, então avise-me se isto funcionou ou não para você: oswald@apachefriends.org.

* Como eu faço backup/restauro meu XAMPP?

Desde o XAMPP para Linux 1.4.2 você pode fazer backups do XAMPP.
Aviso: A funcionalidade de backup e restauração ainda está em desenvolvimento e deve não funcionar corretamente.

Atenção: Há um pequeno bug na versão 1.4.2 do XAMPP. Por favor, dê uma olhada aqui!

* O XAMPP funciona, mas nenhuma imagem aparece?

Este é um problema exclusivo de alguns sistemas Linux. Por favor, abra o /opt/lampp/etc/httpd.conf e procure por estas duas linhas:
#EnableMMAP off
#EnableSendfile off
Remova o # em ambas as linhas e reinicie o Apache. Agora você terá suas imagens de volta.

1º Passo: Criando o backup

Crie o backup utilizando:

/opt/lampp/lampp backup
ou
/opt/lampp/lampp backup secreto

Onde secreto é sua senha do root no MySQL.

Este comando irá apresentar p seguinte:

# /opt/lampp/lampp backup
Backing up databases...
Backing up configuration, log and htdocs files...
Calculating checksums...
Building final backup file...
Backup finished.
Take care of /opt/lampp/backup/xampp-backup-22-01-04.sh
#

2º Passo: Tome cuidado de seu backup

O arquivo /opt/lampp/backup/xampp-backup-22-01-04.sh (no exemplo acima) contém o backup. Guarde este arquivo em um lugar seguro.

3º Passo: Restaurando o backup

Na nova máquina você precisará da mesma versão do XAMPP usada quando feito o backup

Digite (como root):

sh xampp-backup-22-01-04.sh

Você verá algo como isto:

# sh xampp-backup-22-01-04.sh
Checking integrity of files...
Restoring configuration, log and htdocs files...
Checking versions...
Installed: XAMPP 1.4.2
Backup from: XAMPP 1.4.2
Restoring MySQL databases...
Restoring MySQL user databases...
Backup complete. Have fun!
You may need to restart XAMPP to complete the restore.
#

Isto é tudo. Você deve reiniciar o XAMPP para concluir a restauração.

Isto deve funcionar perfeitamente (eu testei várias vezes), mas lembre-se que é uma funcionalidade beta.

4. Parando o XAMPP

Para parar o XAMPP, digite este comando:

/opt/lampp/lampp stop

E você verá:

Stopping LAMPP #VERSION#...
LAMPP: Stopping Apache...
LAMPP: Stopping MySQL...
LAMPP stopped.

E o XAMPP é parado.

5. Desinstalando o XAMPP

Para desinstalar o XAMPP digite apenas este comando:

rm -rf /opt/lampp

6. Futuro do XAMPP

* E sobre o suporte a JSP no XAMPP?

Não. Pois o tamanho do XAMPP cresceria aproximadamente 42mb (38mb do Java 2 SDK e 4mb do Tomcat). No momento atual não penso nisso.

* O que teremos no futuro?

Em uma das próximas versões eu incluirei a primeira versão de minha ferramenta de administração para o Apache chamada Apanatschi. No momento, eu ainda estou desenvolvendo, então a data de lançamento ainda é desconhecida. Na primeira etapa será possível fazer configurações básicas (como em hospedagens virtuais) com o Apanatschi e mais tarde terá suporte ao BIND e ao Postfix.