Linux尋找並殺死殭屍程序

2021-08-12 00:22:23 字數 922 閱讀 1627

linux伺服器上,多少會出現一些殭屍程序,下面介紹如何快速尋找和消滅這些殭屍程序的方法

首先,我們可以用top命令來檢視伺服器當前是否有殭屍程序,在下圖中可以看到殭屍程序數的提示,如果數字大於0,那麼意味著伺服器當前存在有殭屍程序

下面,我們用ps和grep命令尋找殭屍程序

ps -a -ostat,ppid,pid,cmd | grep -e 『^[zz]』

命令註解:

-a 引數列出所有程序

-o 自定義輸出字段 我們設定顯示欄位為 stat(狀態), ppid(程序父id), pid(程序id),cmd(命令)這四個引數

因為狀態為 z或者z的程序為殭屍程序,所以我們使用grep抓取stat狀態為zz程序

執行結果參考如下

z 12334 12339 /path/cmd

這時,我們可以使用 kill -hup 12339來殺掉這個殭屍程序

執行後,可以再次執行ps -a -ostat,ppid,pid,cmd | grep -e 『^[zz]』來確認是否將殭屍程序殺死

如果kill 子程序的無效,可以嘗試kill 其父程序來解決問題,例如上面例子父程序pid是 12334,那麼我們就執行

kill -hup 12334

來解決問題

2023年6月9日新增加

檢查當前殭屍程序資訊

ps -ef | grep defunct | grep -v grep | wc -l

檢視top前兩行資訊

top | head -2

直接殺死程序

ps -ef | grep defunct | grep -v grep | awk 『』

來自:

Linux查詢並殺死殭屍程序

1 檢視系統是否有殭屍程序 使用 top命令 使用top命令查詢,當zombie前的數量不為0時,即系統內存在相應數量的殭屍程序。2 定位殭屍程序 使用命令ps a ostat,ppid,pid,cmd grep e zz 定位殭屍程序以及該殭屍程序的父程序 殭屍程序id 3457,父程序id 34...

linux查詢並殺死殭屍程序

1 檢視系統是否有殭屍程序 使用top命令查詢,當zombie前的數量不為0時,即系統內存在相應數量的殭屍程序。2 定位殭屍程序 使用命令ps a ostat,ppid,pid,cmd grep e 1 定位殭屍程序以及該殭屍程序的父程序 殭屍程序id 3457,父程序id 3425 殭屍程序id ...

Linux查詢並殺死殭屍程序

1 檢視系統是否有殭屍程序 使用top命令查詢,當zombie前的數量不為0時,即系統內存在相應數量的殭屍程序。2 定位殭屍程序 使用命令ps a ostat,ppid,pid,cmd grep e zz 定位殭屍程序以及該殭屍程序的父程序 殭屍程序id 3457,父程序id 3425 殭屍程序id...