shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [shell-script] script para automatização de um programa em fortran


From: MrBiTs
Subject: RE: [shell-script] script para automatização de um programa em fortran
Date: Mon, 27 Dec 2004 18:21:38 -0200

<QUOTE>
eu sempre restarto meus programas com 
killall -1 ou killall -HUP.
exemplo
killall -HUP dhcpd, e o dhcpd sobe de
pq nesse exemplo q vc deu o programa dele num vai subir de novo?
</QUOTE>

Vamos la

Criei um programa vagabundo aqui:

#!/bin/bash

while /bin/true ; do
    sleep 1
done

E o rodei ./d.sh &, jogando-o paga bg


[root@oas root]# ps -ef | grep d.sh
root      1436  1385  0 17:57 pts/0    00:00:00 /bin/bash ./d.sh
root      1645  1385  0 17:59 pts/0    00:00:00 grep d.sh
[root@oas root]# killall -HUP d.sh
[1]+  Hangup                  ./d.sh
[root@oas root]# 
[root@oas root]# ps -ef | grep d.sh
root      1703  1385  0 17:59 pts/0    00:00:00 grep d.sh

Morreu. 

Entretanto, voce esta correto quando diz que killall -HUP dhcpd "restarta" o
serviço. Isso acontece tambem com, por exemplo, o apache. Lendo a
documentacao ( na verdade o codigo fonte do apache ), temos:

Apache doesn't keep track of their pids, it just sends
SIGHUP to the process group, ignoring it in the root process.

Ou seja, qdo o apache recebe um SIGHUP ( killall -HUP ), ele o envia para
todos os seu filhos, mas nao para o processo root. Isso causa o restart do
apache. Como isso é padronizacao de sistemas, os daemons todos devem possuir
esse mesmo comportamento. 

Acredito que o aplicativo fortran dele nao esteja preparado para tratar esse
tipo de sinal, entao o killall -HUP vai funcionar como funcionou no meu
aplicativo d.sh safado. 

Se ele quiser ter absoluta certeza de que vai matar todas as instancias do
menino, pode fazer killall -9 programa.

[]'s



reply via email to

[Prev in Thread] Current Thread [Next in Thread]