Ubuntu 僵尸進(jìn)程查看與清理

發(fā)現(xiàn)問題
登錄Ubuntu系統(tǒng)是提示 There is 1 zombie process.

相關(guān)資料

APEU2對于 僵尸進(jìn)程(zombie process)的定義:
In UNIX System terminology, a process that has terminated, but whose parent has not yet waited for it, is called a zombie.
父線程在子線程結(jié)束時,沒有進(jìn)入wait方法獲取子線程的終止?fàn)顟B(tài),子線程終止后就是僵尸進(jìn)程。

  • 僵尸進(jìn)程(zombie process)的危害
    子線程結(jié)束時會發(fā)送SIGCHLD信號給父線程,父線程進(jìn)入wait方法釋放相關(guān)資源,關(guān)閉打開的文件等。當(dāng)父線程不知道子線程已結(jié)束,不進(jìn)入wait方法釋放相關(guān)資源,大量的僵尸進(jìn)程會占用系統(tǒng)大量資源;另一方面子進(jìn)程的進(jìn)程號還一直被占用,當(dāng)大量的僵尸進(jìn)程出現(xiàn)時會導(dǎo)致系統(tǒng)無法創(chuàng)建新的進(jìn)程。

查看僵尸進(jìn)程

使用 ps aux | grep Z 查看STATZ的進(jìn)程

解決方法

kill父進(jìn)程
ps -e -o ppid,stat | grep Z | cut -d" " -f2 | xargs kill -9

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容