Kill

如果 kill -9 無效,如何在 Linux 中殺死程序

  • December 15, 2012

我想 kill -9 仍然只是向程序發送信號。如果該過程表現不佳,我想 kill -9 將無效。確實,今天我第一次看到 kill -9 在發送到卡住的 ruby​​ 程序時沒有任何效果。所以這是我的問題:是否有一些更嚴厲的方法可以殺死一個程序?

您必須重新啟動機器。如果kill -9沒有殺死一個程序,這意味著它卡在核心中。除非你能弄清楚它粘在什麼上面並解開它,否則你無能為力。它卡住的原因是它正在等待某些東西,而完全停止等待所需的邏輯根本不存在。

(以上假設該程序已經被重新設置為init. 否則,它的父程序可能會保留它。您可能必須殺死它的父程序。)

每次我有一個工作卡住並且信號 9 或 15 不會殺死它時,我都會向它發送信號 30 (SIGPWR),幾乎每次它都會清除它。我不記得何時發送停電信號不起作用。

引用自:https://serverfault.com/questions/458261