Eu precisava configurar um servidor Tomcat baseado em servidor Ubuntu e seguiesse post bem escrito. Tudo funciona muito bem. Porém, tive um comportamento estranho; Eu precisava parar o servidor Tomcat, então usei o comando:
sudo /opt/tomcat/bin/shutdown.sh
No entanto, em cerca de 10 segundos, o Tomcat foi reiniciado automaticamente. Como isso está acontecendo? Faz o seguinte comando:
sudo systemctl enable tomcat
iniciar automaticamente o serviço Tomcat, se seu status for verificado periodicamente e estiver parado?
Responder1
Você deve iniciar, reiniciar e parar o Tomcat com comandos do systemd. Você iniciou o serviço Tomcat sudo systemctl start tomcat
, então se quiser interrompê-lo, você precisa passar pelo systemd: sudo systemctl stop tomcat
. No arquivo da unidade, de acordo com o link que você postou, estão as configurações que são:
RestartSec=10
que instrui o systemd a reiniciar o tomcat.service após 10 segundos em caso de falha ou saída, e Restart=always
instrui o systemd a fazê-lo reiniciar o tomcat.service sempre, não importa qual o motivo da falha ou saída, exceto se for devido a uma ação do systemd. Há uma boa explicaçãoaqui. Então você está tentando desligar o Tomcat ao lado do systemd, e o systemd vê isso como alguma irregularidade no comportamento do tomcat.service e o reinicia.
Este comando:
sudo systemctl enable tomcat
diz ao systemd para iniciar o tomcat.service na inicialização do sistema e nada mais.