
Atualizar:Respondendo ao comentário:
verifique os processos do apache:
$ ps a | grep apache 3
grep: 3: No such file or directory
$ ps a | grep apache
4514 pts/0 S+ 0:00 grep --color=auto apache
$ ps a | grep apache2
4516 pts/0 S+ 0:00 grep --color=auto apache2
verificando o log de erros do apache
$ tail /var/log/apache2/error.log
[Sun Aug 07 03:14:19 2011] [notice] Apache/2.2.16 (Ubuntu) PHP/5.3.3-1ubuntu9.5 with Suhosin-Patch configured -- resuming normal operations
[Mon Aug 08 03:13:58 2011] [notice] Graceful restart requested, doing restart
[Mon Aug 08 03:14:00 2011] [notice] Apache/2.2.16 (Ubuntu) PHP/5.3.3-1ubuntu9.5 with Suhosin-Patch configured -- resuming normal operations
[Mon Aug 08 09:03:16 2011] [notice] caught SIGTERM, shutting down
[Mon Aug 08 09:05:47 2011] [notice] Apache/2.2.16 (Ubuntu) PHP/5.3.3-1ubuntu9.5 with Suhosin-Patch configured -- resuming normal operations
Original:Parei o apache, mas por que ele ainda tem o mesmo número de processos em execução?
$ ps -A | grep apache
1663 ? 00:00:00 apache2
1667 ? 00:00:00 apache2
1668 ? 00:00:00 apache2
1669 ? 00:00:00 apache2
1670 ? 00:00:00 apache2
1671 ? 00:00:00 apache2
$ /etc/init.d/apache2 stop
* Stopping web server apache2 [ OK ]
$ ps -A | grep apache
1663 ? 00:00:00 apache2
1667 ? 00:00:00 apache2
1668 ? 00:00:00 apache2
1669 ? 00:00:00 apache2
1670 ? 00:00:00 apache2
1671 ? 00:00:00 apache2
Obrigado!
Responder1
Isso pode acontecer ocasionalmente quando o Apache se recusa a parar ouProcessos Zumbis. Para o primeiro, você pode eliminar todos os processos em execução com sudo killall -9 apache2
; no entanto, para o último, você simplesmente precisará esperar que eles desapareçam. Caso o Apache não queira parar bem, o que você realmente deseja fazer é investigar o que está acontecendo. Descobrir exatamente o que está acontecendo pode ser difícil.
Uma strace
identificação interativa do processo pode fornecer uma pista sobre quais sites estão agindo e causando problemas. Acima, ps -A
você pode verificar o primeiro processo com
strace -p 1663
Isso será anexado ao rastreamento de pilha dos processos em execução, fornecendo saída ao vivo do que está acontecendo. A qualquer momento você pode Ctrl+C
Um recurso adicional é o log de erros principal do Apache, que pode ser encontrado em /var/log/apache2/error.log
Você desejará obter uma parte decente do log e folheá-lo para obter detalhes. Se o problema for contínuo em execução
tail -f /var/log/apache2/error.log
Isso é semelhante ao que strace
será executado em tempo real. Para as últimas N linhas, substitua -f
por -#
onde #
é um número positivo como 50, 100, 282, etc.
Responder2
Certifique-se de ter as permissões adequadas para interromper o serviço.
Se você executar:
service apache2 stop
você não receberá nenhum erro apenas:
* Parando o servidor web apache2
Tentar:
sudo service apache2 stop
Responder3
Eu também tive o mesmo problema e tentei o seguinte:
sudo apache2ctl stop
interromper o serviço e
sudo apache2ctl start
para iniciá-lo novamente.
Funciona para mim, qualquer sugestão possível é bem-vinda.
Responder4
Os processos podem ser solicitados (enviando umsinalpara eles) parar. O kill
comando é uma maneira de fazer isso. Se você conhece o ID do processo (PID), pode solicitá-lo executando o comando abaixo em um terminal:
kill PID_OF_YOUR_PROCESS
O exemplo acima envia ao PID o sinal TERM padrão (código 15). Você pode procurar os códigos de sinal nopágina de manual de matar( man kill
).
Quando o programa desconsidera o sinal TERM enviado a eles, ainda é possível aplicar um pouco mais de pressão enviando o sinal KILL (código 9). Este sinal é usado como último recurso, pois o processo pode não salvar nenhum dado não salvo.
Especificar a -SIGNAL_CODE
como o primeiro parâmetro antes do ID do processo enviará ao processo o sinal específico. Outro recurso útil do kill
comando é que você pode especificar mais PIDs como no exemplo a seguir:
kill -9 PID1 PID2 PID3 PID4
Tente encerrar os processos do Apache usando a kill -9
linha. Eles deveriam parar, a menos que algo os impeça de fazê-lo.