美文网首页
如何杀死僵尸进程?

如何杀死僵尸进程?

作者: everfight | 来源:发表于2018-05-08 10:56 被阅读169次
    • 僵尸进程定义?
      查看僵尸进程,利用命令ps,可以看到有标记为Z(zombie)的进程就是僵尸进程。

    • 僵尸进程的危害?
      僵尸进程会占用系统资源,如果很多,则会严重影响服务器的性能;

    • 僵尸进程产生的原因?

      • 子进程结束后向父进程发出SIGCHLD信号,父进程默认忽略了它
      • 父进程没有调用wait()或waitpid()函数来等待子进程的结束
      • 网络原因有时会引起僵尸进程;
    • 如何杀死僵尸进程?
      僵尸进程用kill命令是无法杀掉的,但是我们可以结果掉僵尸进程的爸爸,僵尸daddy挂了之后,僵尸进程就成了孤儿进程,孤儿进程不会占用系统资源,会被init程序收养,然后init程序将其回收。

    ps -A -o stat,ppid,pid,cmd |grep -e "^[Zz]"    //先查看具体进程:
    kill -9 pid号         //杀死z进程(这些动作是比较危险的,希望在真正的服务器上面慎用!!!)
    
    如何杀死僵尸进程.png
    1.查看所有R相关的进程
    2.查看僵尸进程的父进程
    3.杀死僵尸进程对应的副进程
    4.僵尸进程被回收
    

    参考:

    1. https://blog.csdn.net/zjwson/article/details/53321431
    2. https://www.cnblogs.com/sbaicl/archive/2012/09/16/2687201.html
    3. https://michaelyou.github.io/2015/03/12/孤儿进程与僵尸进程/
    4. https://baike.baidu.com/item/僵尸进程/1036577

    相关文章

      网友评论

          本文标题:如何杀死僵尸进程?

          本文链接:https://www.haomeiwen.com/subject/qxyirftx.html