zombi işlemlerini algılama


2

Linux terminalinin komut satırından kalan zombi işlemlerini nasıl tespit edip öldürebilirim?


1
Ölüyü öldüremezsin: P. Zombi süreci, ana işlemle “beklemeyi” bekleyen, ölü bir işlemdir. Bu süreçte ebeveyn çocuklarının nasıl bittiğini bilir. Terminal sona erdiğinde, bu işlem init tarafından miras alınacak ve init bunları "bekleyecek". Öyleyse ihtiyacınız olan, ana süreci öldürmek / sonlandırmak.

Yanıtlar:


4

Bir zombi işlemini öldüremezsin. Ebeveyn işlemi çağırmazsa wait(), zombi kaldırmak için ana işlemi öldürmek zorunda.


1

"Devre dışı bırakma" için grep yapabilir veya kontrol edebilirsiniz Z "durum" çıkışında

ps -eo state,pid,cmd | grep "^Z"

Eğer onu da öldürmek istiyorsan

ps -eo state,ppid | awk '$1=="Z"{cmd="kill -9 "$2;system(cmd) }'

0

Deneyin:

ps aux

ve durum sütununa bakın. Zombiler Z harfi ile temsil edilir.


0

ps ax -o durum -o ppid deneyin | awk '$ 1 == "Z" {yazdır $ 2}' | xargs tüm zombileri öldürür


Kodun ne yaptığını açıklamak için cevabınızı biraz genişletebilir misiniz? (Baltanın belki kafalarını kesmek için kullanıldığını düşünüyorum? :-))
fixer1234

1
Bu komut soruyu cevaplayabilirken, niye ya ve / veya Nasıl Sorunun uzun vadeli değerini önemli ölçüde iyileştireceği yanıtını veriyor. Lütfen Düzenle bazı açıklamalar eklemek için cevabınız.
Toby Speight
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.