scripts cronjob continuam em execução depois de terminar seu trabalho

0

Eu tenho um cronjob que é executado a cada 10 minutos. O script que está sendo executado detecta, às vezes, um problema e inicia um serviço (usando /sbin/service XXX start ) que, por fim, inicia um processo java.

Caso os scripts consigam iniciar o serviço java, meu script de cronjob inicial continuará funcionando para sempre:

root      8003  0.0  0.0 106100   212 ?        Ss   00:40   0:00 /bin/bash /root/scripts/cron_script.sh
root     10295  0.0  0.0 106100    40 ?        Ss   Oct25   0:00 /bin/bash /root/scripts/cron_script.sh
root     11135  0.0  0.0 106100   208 ?        Ss   Oct26   0:00 /bin/bash /root/scripts/cron_script.sh
root     22787  0.0  0.0      0     0 ?        Zs   Oct26   0:00 /bin/bash /root/scripts/cron_script.sh
root     29956  0.0  0.0 106100   208 ?        Ss   Oct25   0:00 /bin/bash /root/scripts/cron_script.sh

O que eu quero é que esses scripts saiam da lista de processos em execução (ou não apareçam após o serviço ter sido iniciado)

Se eu matar esses scripts, as seguintes duas coisas acontecem:

- > Meu serviço java process não está morto (o que é bom)

- > Eu entro agora na lista de processos o seguinte:

root      8003  0.0  0.0      0     0 ?        Zs   00:40   0:00 [cron_script] <defunct>
root     10295  0.0  0.0      0     0 ?        Zs   Oct25   0:00 [cron_script] <defunct>
root     11135  0.0  0.0      0     0 ?        Zs   Oct26   0:00 [cron_script] <defunct>
root     22787  0.0  0.0      0     0 ?        Zs   Oct26   0:00 [cron_script] <defunct>
root     29956  0.0  0.0      0     0 ?        Zs   Oct25   0:00 [cron_script] <defunct>

Então, como posso ter certeza de que os processos cron sempre acabaram depois que meu serviço foi (re) iniciado?

PS: esse script cron_script.sh é a raiz de uma pilha de chamadas de processo de 5 até chegar ao serviço java e todas continuam em execução.

    
por Gabriel Petrovay 27.10.2016 / 12:49

0 respostas