Eu sou novo no linux e tenho me testado usando uma instância do Amazon Lightsail (Ubuntu 16.04 LTS).
Percorrendo os vários guias que encontrei, vejo pessoas usando comandos diferentes para iniciar / parar / reiniciar / recarregar / verificar o status de um serviço. Especificamente estes;
sudo systemctl status apache2.service
sudo /bin/systemctl status apache2.service
sudo /etc/init.d/apache2 status
sudo service apache2 status
Todos os comandos acima funcionam.
- Devo preferir um comando ao outro?
- Se sim, por que?
- Existem outros comandos que eu preciso conhecer?
O uso do init.d no Monit causou problemas quando eu quis usar a opção status (o status será que o serviço está offline quando na verdade estava online - reiniciado pelo Monit). Altere o código no Monit de inid.d para / bin / systemctl corrigido.
Parece que o uso do init.d fornece mais informações sobre o que aconteceu com os outros. Se eu deveria estar usando um dos outros comandos, é possível que eles exibam mais informações sobre o que foi feito?
ubuntu@ip-172-26-12-245:~$ sudo systemctl restart pure-ftpd.service
ubuntu@ip-172-26-12-245:~$ sudo /bin/systemctl restart pure-ftpd.service
ubuntu@ip-172-26-12-245:~$ sudo /etc/init.d/pure-ftpd restart
[ ok ] Restarting pure-ftpd (via systemctl): pure-ftpd.service.
ubuntu@ip-172-26-12-245:~$ sudo service pure-ftpd restart
ubuntu@ip-172-26-12-245:~$
Gostaria de agradecer antecipadamente a todos que se dispuseram a ler e responder a esta pergunta.
systemctl
é a sintaxe preferida e service
é fornecida como compatibilidade com versões anteriores. /etc/init.d/pure-ftpd
ou similares estão chamando os scripts de start / stop diretamente.