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...