2016-06-22 1 views
0

Je veux tuer une chaîne de processus, par ex.pkill ne tue pas les processus passés descendants immédiats d'un processus donné

PID PPID 
100 XXX 
101 100 
102 101 

Lorsque j'utilise pkill -P 100 PID 100 et 101 meurent comme prévu, mais 102 est donnée d'initialisation comme il est PPID.

Comment puis-je forcer pkill à continuer à tuer les processus chaînés après les descendants immédiats d'un processus?

+0

Non, vous ne pouvez pas forcer 'pkill' à faire ce que vous voulez. Chaque processus a une procédure de traitement du signal. Certains programmes sont conçus pour propager le signal reçu à leurs enfants, tandis que d'autres sont destinés à filtrer les signaux. Un service Web est un exemple où le démon superviseur génère des processus enfants. Ce n'est pas une bonne idée pour le démon superviseur de propager le signal vers les enfants car si le démon superviseur meurt, les services Web descendent avec. Une base de données est un exemple dans lequel la propagation du signal est souhaitable en laissant les processus clients mourir lorsque l'enregistreur de journal meurt. – alvits

Répondre

0

essayez la commande suivante:

kill -9 100

Vous pouvez trouver plus d'informations et les options sur la page de documentation kill:

homme tuer