次のコマンドを使用してゾンビプロセスを見つけます
ps-A-ostat,ppid,pid,cmd|grep-e'^[Zz]'
コマンドメモ:
-A パラメーターはすべてのプロセスをリストします
-o Custom For出力フィールドでは、表示フィールドを stat (ステータス)、ppid (プロセスの親 ID)、pid (プロセス ID)、および cmd (コマンド) に設定します。これらの 4 つのパラメーター
-C は、名前を指定するために使用されます。ここでは、phpコマンドによって生成されたプロセスの情報のみを表示するようにpsに要求しています
ps-Cjava-olstart,pid,cmd【しかし、印刷は不完全のようです~】
ps-A-olstart ,pid,args|grepjava【これでOK~】
ステータスzまたはZのプロセスはゾンビプロセスなので、grepを使ってステータスzZのプロセスをキャプチャします
ここには合計9つのゾンビプロセスがあります。それらをすべて強制終了し、次のコマンドを実行する必要があります
kill-98310
この時点で、ゾンビ プロセスの検索を実行すると、すべてのゾンビ プロセスがなくなっていることがわかります。
補足:
最近、別の問題が発生しました。サーバー上に100以上のゾンビプロセスがあり、各ゾンビプロセスの親プロセスが異なります。上記の方法を使用して1つずつ強制終了すると、うまくいきません。とても疲れました。
それなら、ゾンビプロセスを直接見つけて親プロセスを強制終了する簡単なコマンドを考えるべきです〜
ps-A-ostat,ppid,pid,cmd|grep-e'^[Zz]'|awk'{print $2}'|xargskill-9
Linux ゾンビ プロセスの表示と解決に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。