GNU/Linux >> Belajar Linux >  >> Linux

Cara mematikan proses <defunct> dengan induk 1

Solusi 1:

Satu-satunya cara Anda dapat menghapus proses zombie/mati, adalah dengan membunuh induknya. Karena induknya adalah init (pid 1), itu juga akan mematikan sistem Anda.

Ini cukup banyak membuat Anda memiliki dua opsi.

  • Secara manual memodifikasi tabel proses, mis. buat proses dummy, hubungkan proses yang mati sebagai anak dari dummy, lalu matikan. Cukup berbahaya, dan Anda mungkin harus membersihkan sumber daya proses lainnya secara manual seperti semafor dan pegangan file.
  • Boot ulang sistem.

Saya akan memilih yang kedua.

Solusi 2:

Periksa apakah ada kepanikan kernel,

# dmesg |tail

Periksa apakah prosesnya dalam "D" Unkillable sleep, di mana itu dalam mode kernel untuk beberapa syscall yang belum kembali (baik kernel oops, atau alasan lain) http://www.nabble.com/What-causes-an -unkillable-process--td20645581.html

Solusi 3:

Anda dapat mencoba memulai ulang init:

 # telinit u

Kalau tidak, saya tidak akan terlalu khawatir. Itu tidak berjalan dan tidak mengambil sumber daya apa pun dan hanya ada di sana sehingga kernel dapat mengingatnya.

Solusi 4:

Jika zombie memiliki init sebagai induknya, maka init telah berhenti berfungsi dengan baik. Salah satu peran init adalah membersihkan zombie. Jika tidak melakukannya, tidak ada orang lain yang akan melakukannya. Jadi satu-satunya solusi adalah reboot. Jika init rusak, maka reboot mungkin gagal, jadi saya akan mematikan layanan penting, menyinkronkan sistem file, lalu menekan tombol daya.

Solusi 5:

Mari kita kurangi kepanikan, oke? Proses "mati" atau "zombie" bukanlah proses . Ini hanyalah sebuah entri dalam tabel proses, dengan kode keluar yang disimpan. Jadi, zombi tidak memiliki sumber daya, tidak memerlukan siklus CPU, dan tidak menggunakan memori, karena ini bukan proses . Jangan menjadi aneh dan gatal saat mencoba "membunuh" proses zombie. Sama seperti namanya, mereka tidak bisa dibunuh, karena mereka sudah mati. Namun tidak seperti jenis pemakan otak, mereka sama sekali tidak membahayakan siapa pun, dan tidak akan mengganggu proses lain.

Jangan biarkan proses zombie memakan otak Anda. Abaikan saja mereka.


Linux
  1. Cara Menemukan dan Membunuh Proses Zombie di Linux

  2. Bagaimana Membunuh Proses Yang Induknya Init?

  3. Restart proses di linux dengan nomor pidn nya dengan perintah kill, bagaimana caranya?

  1. Bagaimana Cara Membunuh Proses Dengan Frasa Dalam Namanya??

  2. Bagaimana cara mematikan proses di Linux menggunakan perintah?

  3. Bagaimana cara mengatur direktori kerja dari proses induk?

  1. Bagaimana cara mematikan semua proses dengan nama parsial yang diberikan?

  2. Cara membunuh proses zombie

  3. Bagaimana cara membunuh proses anak python yang dibuat dengan subprocess.check_output() saat induknya meninggal?