Willy-nilly süreçlerini öldürmek düzgün bir hamle değil: veriler kaybolabilir, kötü tasarlanmış uygulamalar kendilerini yeniden yüklemeden düzeltilemeyecek kadar ince yollarla kırabilirler .. ama tamamen neyin güvenli olduğunu ve neyin güvenli olmadığını bilmeye bağlıdır. verilen durum. ve risk altında ne olurdu. Kullanıcı bir sürecin ne olduğu veya ne yapılması gerektiği ve ne gibi kısıtlamalar olduğu hakkında bir fikre sahip olmalı (disk IOPS, rss / swap) ve uzun süren bir işlemin ne kadar zaman alacağını tahmin edebilmelidir (bir dosya kopyası, mp3 reencoding, e-posta taşıma, yedekleme, [en sevdiğiniz zaman ayırıcı burada].)
Ayrıca, SIGKILLbir ihaleye yollama , onu öldürme garantisi değildir. Bir sistemde sıkışmışsa veya zaten zombi ( Zin ps) ise, zombi olmaya devam edebilir. Bu genellikle ^ Z uzun süren bir işlemdir ve bgdenemeden önce unutmayı kill -9gerektirir. Basit bir fgstdin / stdout'u tekrar bağlar ve muhtemelen işlemin engeli kaldırır, ardından genellikle işlem sonlandırılır. Başka bir yerde veya başka bir çekirdek kilitlenme biçiminde sıkışmışsa, yalnızca bir yeniden başlatma işlemi kaldırabilir. ( SIGKILLÇekirdek tarafından işlendikten sonra Zombie işlemleri çoktan ölmüştür (başka bir kullanıcı kodu kullanılmayacaktır), genellikle bitmeyen bir süreç için bir çekirdek nedeni vardır (işlemin bitmesini beklerken "engellenme" ye benzer).)
Ayrıca, bir süreci ve tüm çocuklarını öldürmek istiyorsanız , yalnızca PID'nin kendisini değilkill , olumsuzlanan PID'yi arama alışkanlığına da sahip olun . Orada hiçbir garantisi var SIGHUP, SIGPIPEya SIGINTveya diğer sinyaller ondan sonra temizlik ve temizleme için disowned süreçler (melez hatırlayın?) Can sıkıcı bir demet sahip.
Bonus kötülük: kill -9 -1biraz daha zararlıdır kill -9 1(Atma, önemli olmayan bir VM'de ne olacağını görmek istemiyorsanız, root olarak yapmayın)