web-dev-qa-db-fra.com

Comment tuer un processus Nohup?

J'ai exécuté la commande suivante

$ Nohup ./tests.run.pl 0 &

maintenant, quand j'essaie de le tuer (et les exécutions démarrées à partir de ce script) en 

$ kill -0 <process_id>

ça ne marche pas. Comment puis-je tuer un processus nohupped et les processus exécutés via le script nohupped?

Merci

30
polerto

kill -0 fait pas tue le processus. Il vérifie simplement si vous pouvez lui envoyer un signal.

Simplement kill pid, et si cela ne fonctionne pas, essayez kill -9 pid.

40
Mat

Simplement kill <pid> qui enverra une SIGTERM, que Nohup ne sera pas ignorée.

Vous ne devriez pas envoyer une SIGKILL en premier car cela ne laisse aucune chance au processus de récupérer; vous devriez essayer ce qui suit, dans l'ordre:

  • SIGTERM (15)
  • SIGINT (2)
  • SIGKILL (9)
25
trojanfoe

Je ferais quelque chose comme:

jobs

[1] + Running Nohup ./tests.run.pl

kill %1
4
user7321649

Si vous ne connaissez pas les identifiants de processus et qu'il est possible que diverses commandes soient exécutées dans un shell (ou une boucle), vous pouvez exécuter jobs -l pour répertorier les travaux et les PID, puis kill.

Voir exemple:

ubuntu@app2:/usr/share/etlservice/bin$ jobs -l
[1]  27398 Running                 Nohup ./extract_assessor_01.sh > job1.log &
[2]  27474 Running                 Nohup ./extract_assessor_02.sh > job2.log &
[3]  27478 Running                 Nohup ./extract_assessor_03.sh > job3.log &
[4]- 27481 Running                 Nohup ./extract_assessor_04.sh > job4.log &
[5]+ 28664 Running                 Nohup ./extract_assessor_01.sh > job1.log &
ubuntu@app2:/usr/share/etlservice/bin$ Sudo kill 27398
Sudo kill 27474[1]   Terminated              Nohup ./extract_assessor_01.sh > job1.log
ubuntu@app2:/usr/share/etlservice/bin$ Sudo kill 27474
[2]   Terminated              Nohup ./extract_assessor_02.sh > job2.log
ubuntu@app2:/usr/share/etlservice/bin$ Sudo kill 27478
[3]   Terminated              Nohup ./extract_assessor_03.sh > job3.log
ubuntu@app2:/usr/share/etlservice/bin$ Sudo kill 27481
[4]-  Terminated              Nohup ./extract_assessor_04.sh > job4.log
ubuntu@app2:/usr/share/etlservice/bin$ Sudo kill 28664
[5]+  Terminated              Nohup ./extract_assessor_01.sh > job1.log
ubuntu@app2:/usr/share/etlservice/bin$
3
Mike S.

tuer Nohup processus 

ps aux |grep Nohup

grep que PIDkill -15 -1 16000 (vous déconnectera) et à nettoyer à la prochaine connexion root

0
san shrestha