Cara terbaik untuk membunuh proses Zombie dan D di linux

Jawaban:

19

Ketuk dua kali.

Sebenarnya, reboot. Tidak ada cara nyata untuk dengan mudah menyingkirkan zombie, tetapi benar-benar tidak ada alasan untuk itu karena zombie tidak mengambil sumber daya di komputer; itu entri yatim di tabel proses. Init seharusnya mengumpulkannya tetapi ada yang salah dengan prosesnya. http://en.wikipedia.org/wiki/Zombie_process

Mungkin Anda bertanya karena ada masalah yang lebih buruk ... apakah Anda mendapatkan satu kapal penuh zombie berkeliaran di meja proses Anda? Itu biasanya berarti bug dalam program atau masalah dengan konfigurasi. Anda seharusnya tidak memiliki sejumlah besar zombie di sistem. Satu atau dua saya tidak khawatir. Jika Anda memiliki lima puluh di antaranya dari Apache atau daemon lain, Anda mungkin memiliki masalah. Tapi itu tidak terkait langsung dengan pertanyaan Anda ...

Bart Silverstrim
sumber
1
ada sekitar 10 proses zombie
vnix27
Apa saja prosesnya?
Bart Silverstrim
15
/sbin/reboot

Anda tidak dapat membunuh zombie - itu sudah mati

Jika ppid masih ada, maka terminasi yang sering dapat membersihkan zombie yang muncul.

Anda seharusnya tidak membunuh proses dalam tidur tanpa gangguan - biasanya ini berarti mereka terikat / terikat, tetapi IIRC juga dapat terjadi selama pemblokiran yang dibaca dari misalnya soket jaringan.

symcbean
sumber
10

Kesalahan dalam sistem file atau disk yang mendasari dapat menyebabkan proses I / O terikat. Dalam hal ini coba "umount -f" filesystem yang mereka andalkan - ini akan membatalkan permintaan I / O luar biasa yang ada.

Arie Skliarouk
sumber
2
Dan kehilangan data. Kedengarannya bukan ide yang bagus.
Michael Hampton
5
Anda kehilangan data karena reboot. Dengan cara ini Anda dapat menghindari fitur reboot - berguna pada sistem produksi atau pengembangan.
Arie Skliarouk
2
Terima kasih, ini berhasil untuk masalah yang kami miliki dengan skrip yang macet berusaha mengakses NFS mount yang hilang selama berminggu-minggu :)
BT643
1
Inilah yang terjadi pada saya kadang-kadang ketika saya melakukan lsperintah pada s3fs mount. The lsProses tidak akan membunuh bahkan dengan kill -9sampai aku memaksa unmount dengan umount -l. Alternatif untuk umount?
Marco Marsala
2
Sekarang proses umount saya digantung sebagai STATUS zombie "D +"!
Curtis Yallop