殭屍進程定義?
查看殭屍進程,利用命令ps,可以看到有標記爲Z(zombie)的進程就是殭屍進程。殭屍進程的危害?
殭屍進程會佔用系統資源,如果很多,則會嚴重影響服務器的性能;-
殭屍進程產生的原因?
- 子進程結束後向父進程發出SIGCHLD信號,父進程默認忽略了它
- 父進程沒有調用wait()或waitpid()函數來等待子進程的結束
- 網絡原因有時會引起殭屍進程;
如何殺死殭屍進程?
殭屍進程用kill命令是無法殺掉的,但是我們可以結果掉殭屍進程的爸爸,殭屍daddy掛了之後,殭屍進程就成了孤兒進程,孤兒進程不會佔用系統資源,會被init程序收養,然後init程序將其回收。
ps -A -o stat,ppid,pid,cmd |grep -e "^[Zz]" //先查看具體進程:
kill -9 pid號 //殺死z進程(這些動作是比較危險的,希望在真正的服務器上面慎用!!!)
1.查看所有R相關的進程
2.查看殭屍進程的父進程
3.殺死殭屍進程對應的副進程
4.殭屍進程被回收
參考: