GNU/Linux >> Linux の 問題 >  >> Linux

親 1 で <defunct> プロセスを強制終了する方法

解決策 1:

ゾンビ/無効なプロセスを削除できる唯一の方法は、親を殺すことです。親は init (pid 1) であるため、システムも停止します。

これにより、ほとんど2つのオプションが残ります。

  • プロセス テーブルを手動で変更します。ダミープロセスを作成し、無効なプロセスをダミーの子としてリンクしてから、それらを強制終了します。非常に危険であり、セマフォやファイル ハンドルなどの他のプロセス リソースを手動でクリーンアップする必要がある場合があります。
  • システムを再起動します。

私は 2 番目を選びます。

解決策 2:

カーネル パニックが発生したかどうかを確認します。

# dmesg |tail

プロセスが「D」Unkillableスリープにあるかどうかを確認します。ここでは、まだ返されていないsyscallのカーネルモードになっています(カーネルoopsまたはその他の理由)http://www.nabble.com/What-c​​auses-an -unkillable-process--td20645581.html

解決策 3:

init を再起動してみてください:

 # telinit u

そうでなければ、私はあまり心配しません。実行されておらず、リソースも消費せず、カーネルが記憶できるようにそこにあるだけです。

解決策 4:

ゾンビが親として init を持っている場合、init は適切に機能しなくなります。 init の役割の 1 つは、ゾンビをクリーンアップすることです。それをしなければ、他の誰もしません。したがって、唯一の解決策は再起動することです。 init が壊れていると、再起動に失敗する可能性があるため、重要なサービスをシャットダウンし、ファイルシステムを同期してから、代わりに電源ボタンを押します。

解決策 5:

パニックを抑えましょう。 「消滅」または「ゾンビ」プロセスはプロセスではありません .これは、終了コードが保存された、プロセス テーブル内の単なるエントリです。したがって、ゾンビはプロセスではないため、リソースを保持せず、CPU サイクルも使用せず、メモリも使用しません。 .ゾンビ プロセスを "kill" しようとして奇妙でかゆくならないでください。彼らの同名のように、彼らはすでに死んでいるので殺すことはできません.しかし、脳を食べる種類のものとは異なり、彼らは絶対に誰にも害を及ぼさず、他のプロセスを噛むこともありません.

ゾンビ プロセスに頭を悩ませてはいけません。無視してください。


Linux
  1. 親が初期化されているプロセスを強制終了する方法は?

  2. コマンドを使用してLinuxでプロセスを強制終了する方法は?

  3. 特定の部分名を持つすべてのプロセスを強制終了する方法は?

  1. Linuxでゾンビプロセスを強制終了する方法

  2. 名前にフレーズが含まれているプロセスを強制終了する方法は??

  3. Linux でプロセスを一時停止/再開する方法

  1. 親プロセスの作業ディレクトリを設定するにはどうすればよいですか?

  2. ゾンビプロセスを強制終了する方法

  3. 親プロセスが終了したときに、subprocess.check_output() で作成された python 子プロセスを強制終了する方法は?