¿script de shell para matar el servicio de tomcat si no es detenido por el comando de detención después de cierta cantidad de tiempo? - linux, bash, shell, tomcat

Me gustaría escribir shell script para comenzar ydetener el servidor tomcat. Para detener el tomcat, estoy usando este comando "./bin/shudown.sh" o "./bin/catalina.sh stop". Esto no funciona la mayoría de las veces, Tomcat todavía se está ejecutando. Así que me gustaría matar al Tomcat después de dar el comando de apagado y esperar un tiempo (por ejemplo, 5min). ¿Alguien puede ayudarme a hacerlo?

Respuestas

6 para la respuesta № 1

./bin/catalina.sh debería apoyar esto. Si ejecuta ese comando sin ninguna opción, imprimirá su uso, que describe:

stop n -force    Stop Catalina, wait up to n seconds and then use kill -KILL if still running

Para hacer que esto funcione, necesita establecer la variable de entorno CATALINA_PID a un nombre de archivo que se utilizará para contener el ID de proceso de Tomcat. Para iniciar Tomcat, utiliza:

export CATALINA_PID=/tmp/catalina.pid
./bin/catalina.sh start

Y luego para detenerlo:

export CATALINA_PID=/tmp/catalina.pid
./bin/catalina.sh stop 600 -force

Esto intentará detenerlo, esperar 5 minutos, luego eliminarlo si es necesario. Tenga en cuenta que esto se ejecutará en primer plano de forma predeterminada (bloqueo de la instancia de terminal); usar una cola & para ejecutar el comando en segundo plano.


0 para la respuesta № 2

Puede usar: pkill -9 tomcatServiceName o killall -9 tomcatServiceName.


Menú