2016-06-22 4 views
0

Ich möchte eine Prozesskette z.pkill tötende Prozesse nicht über unmittelbare Nachkommen eines gegebenen Prozesses

PID PPID 
100 XXX 
101 100 
102 101 

Wenn ich pkill -P 100 PID 100 und 101 sterben wie erwartet, aber 102 ist init gegeben, wie es PPID ist.

Wie kann ich pkill zwingen, verkettete Prozesse über die unmittelbaren Nachkommen eines Prozesses hinaus zu töten?

+0

Nein, du kannst 'pkill' nicht dazu zwingen, das zu tun, was du willst. Jeder Prozess hat eine Signalverarbeitungsprozedur. Einige Programme sind so ausgelegt, dass sie das empfangene Signal an ihren Kindprozess weiterleiten, während andere die Signale filtern sollen. Ein Web-Service ist ein Beispiel, in dem der Supervisor-Daemon untergeordnete Prozesse hervorbringt. Es ist keine gute Idee, dass der Supervisor-Daemon das Signal an die untergeordneten Elemente weitergibt, denn wenn der Supervisor-Daemon stirbt, gehen die Web-Services mit ihm verloren. Eine Datenbank ist ein Beispiel, bei dem die Ausbreitung des Signals wünschenswert ist, indem Clientprozesse sterben lassen, wenn der Protokollschreiber stirbt. – alvits

Antwort

0

versuchen, den folgenden Befehl ein:

Kill -9 100

Sie weitere Informationen und Optionen auf Tötungsdokumentationsseite finden können:

Mann töten

Verwandte Themen