僵尸进程定义?
查看僵尸进程,利用命令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.僵尸进程被回收
参考: