Zuerst können wir mit dem Befehl top prüfen, ob derzeit Zombie-Prozesse auf dem Server vorhanden sind. Am Ende der zweiten Zeile können Sie sehen, dass die Zahl größer als 0 ist bedeutet, dass es derzeit Zombie-Prozesse auf dem Server gibt
Sie können die Befehle ps und grep verwenden, um Zombie-Prozesse zu finden
ps -A -ostat,ppid,pid,cmd |. ^[Zz]'
Beschreibung der Befehlsoption:
-Ein Parameter listet alle Prozesse auf
-o Benutzerdefinierte Ausgabefelder Wir setzen die Anzeigefelder auf stat (Status), ppid (übergeordneter Prozess). id), pid (Prozess-ID), cmd (Befehl) Parameter
Da der Prozess mit dem Status z oder Z ein Zombie-Prozess ist, verwenden wir grep, um den Prozess mit dem Status zZ zu erfassen
Die laufenden Ergebnisse sind wie folgt
Z 12334 12339 /path/cmd
Zu diesem Zeitpunkt können wir kill -HUP 12339 verwenden, um den Zombie-Prozess zu beenden
Nach dem Ausführen können Sie ps -A -ostat,ppid,pid ausführen ,cmd |. grep -e '^[Zz]' erneut, um zu bestätigen, ob der Zombie-Prozess beendet wird. Wenn das Beenden des untergeordneten Prozesses wirkungslos ist, können Sie versuchen, den übergeordneten Prozess zu beenden, um das Problem zu lösen Beispiel: Die übergeordnete Prozess-PID ist 12334, dann führen wir
kill -HUP 12334 aus, um das Problem zu lösen