Acabei de começar a usar o Debian 8, que introduziu o systemd. Não estou interessado na política em torno do SysV vs systemd, mas estou confuso, especialmente em torno do Apache (2.4).
Existem agora duas maneiras de reiniciar o Apache:
apache2ctl restart
ouapache2ctl graceful
systemctl restart apache2
e parece quesystemctl restart apache2.service
faz a mesma coisa.
E eles parecem fazer coisas diferentes (!). Eu não entendo a diferença.
Parece que preciso fazer as duas coisas para que uma reinicialização completa funcione corretamente. por exemplo, depois de alterar um arquivo de configuração para o módulo php, ele apenas notou a alteração depois de ambos.
Outra vez em que apache2ctl configtest
estava falhando e a falha foi relatada em systemctl status apache2
Corrigi a configuração para que o primeiro desses comandos ficasse satisfeito, reiniciei com apache2ctl restart
mas o comando systemd status ainda o listou como não em execução e com o problema de configuração antigo.
Prometo passar muito tempo lendo sobre o systemd (RTFM) em profundidade em algum momento, mas enquanto isso, em um nível prático relacionado ao apache, eu apreciaria conselhos.
Responder1
Se você quiser consistência, use sempre systemctl
for stop
, start
, e restart
. Isso acaba usando o apache2ctl
programa - por enquanto através do /etc/init.d/apache2
script, mas provavelmente a partir de um arquivo de unidade nativo systemd
no futuro.
systemd
não saberá quando você usou apache2ctl
diretamente, possivelmente resultando (como você descobriu) em uma situação em que systemd
o thinks apache2
ainda está com defeito quando na verdade está funcionando bem.
Para configtest
e status
, use apache2ctl
. Eles apenas consultam o Apache sem alterar seu estado.