Salut Un logiciel nommé G09 fonctionne en parallèle avec Linda. Il engendre ses processus enfants parallèles sur d'autres noeuds (hôtes) commeTuer tous les processus engendrés par le parent avec `ssh -x -n` sur les autres hôtes
/usr/bin/ssh -x compute-0-127.local -n /usr/local/g09l/g09/linda-exe/l1002.exel ...other_opts...
Cependant, lorsque le nœud maître tue ce processus, le processus d'enfant correspondant sur un autre noeud, à savoir calculer-0-127 ne meurt pas, mais continue de fonctionner en arrière-plan. En ce moment, je vais manuellement à chaque nœud qui a ces processus Linda orphelins et les tuer avec kill
. Y a-t-il un moyen de tuer ces processus de l'enfant?
Regardez pastebin 1 pour pstree avant de tuer le processus et à pastebin 2 pour pstree après parent tué
pastebin1 - http://pastebin.com/yNXFR28V
pastebin2 - http: // pastebin.com/ApwXrueh
assez -non points de réputation pour hyperlinking secondes pastebin, désolé! (
Mise à jour Répondre1
Merci Martin pour expliquer. J'ai essayé suivant
killme() { kill 0 ; } ; #Make calls to prepare for running G09 ;
g09 < "$g09inp" > "$g09out" &
trap killme 'TERM'
wait
mais lorsque le couple/Maui (qui gère s exécution du travail) tue le travail (ce script) en tant que qdel $jobid
les processus démarrés par G09 en tant que ssh -x $host -n
sont toujours exécutés en arrière-plan. Qu'est-ce que je fais mal ici? (Terminaison normale est pas un problème car G09 s'arrête ces processus.) Ci-dessous pstree
avant qdel
bash
|-461.norma.iitb. /opt/torque/mom_priv/jobs/461.norma.iitb.ac.in.SC
| `-g09
| `-l1002.exe 1048576000Pd-C-C-addn-H-MO6-fwd-opt.chk
| `-cLindaLauncher/tmp/viaExecDataN6
| |-l1002.exel 1048576000Pd-C-C-addn-H-MO6-fwd-opt.ch
| | |-{l1002.exel}
| | |-{l1002.exel}
| | |-{l1002.exel}
| | |-{l1002.exel}
| | |-{l1002.exel}
| | |-{l1002.exel}
| | |-{l1002.exel}
| | `-{l1002.exel}
| |-ssh -x compute-0-149.local -n ...
| |-ssh -x compute-0-147.local -n ...
| |-ssh -x compute-0-146.local -n ...
| |-{cLindaLauncher}
| `-{cLindaLauncher}
`-pbs_demux
et après qdel
il montre encore
461.norma.iitb. /opt/torque/mom_priv/jobs/461.norma.iitb.ac.in.SC
`-ssh -x -n compute-0-149 rm\040-rf\040/state/partition1/trirag09/461
l1002.exel 1048576000Pd-C-C-addn-H-MO6-fwd-opt.ch
|-{l1002.exel}
|-{l1002.exel}
|-{l1002.exel}
|-{l1002.exel}
|-{l1002.exel}
|-{l1002.exel}
|-{l1002.exel}
`-{l1002.exel}
ssh -x compute-0-149.local -n /usr/local/g09l/g09/linda-exe/l1002.exel
ssh -x compute-0-147.local -n /usr/local/g09l/g09/linda-exe/l1002.exel
ssh -x compute-0-146.local -n /usr/local/g09l/g09/linda-exe/l1002.exel
ce que je fais mal ici? est le trap killme 'TERM'
mauvais?
Avez-vous écrit ces processus? – ewanm89
non, ils sont créés par des binaires G09 (G09 est un logiciel pour les simulations de chimie quantique) – Prince