杀死僵尸进程的小脚本

百科:

  ZOMBIE:僵尸状态,表示进程结束但尚未消亡的一种状态,此时进程已经结束运行并释放大部分资源,但尚未释放进程控制块。

  与ZOMBIE对应的进程状态还有RUNNING(正在运行或等待运行状态),UNINTERRUPTABLE(不可中断阻塞状态),INTERRUPTABLE(可中断阻塞状态),STOPPED(挂起状态)。

 

服务器通常都会带来一些僵尸进程,占用系统资源,浪费资源等,一般我们使用top命令就可以看得出来,如图:

 

(可以看到,我的服务器已经产生了两个僵尸进程)

 

解决方法:

  #ps -A -o stat,ppid,pid,cmd |grep -e "^[Zz]"    //先查看具体进程:
  #kill -9 pid号         //杀死z进程(这些动作是比较危险的,希望在真正的服务器上面慎用!!!)

 

  

假若你的z进程比较多,可以编写个小小的脚本,下面是参与网上的

#ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' | awk '{print $2}' | xargs kill -9

一般僵尸进程很难直接kill掉,不过您可以kill僵尸爸爸。父进程死后,僵尸进程成为”孤儿进程”,过继给1号进程init,init始终会负责清理僵尸进程.它产生的所有僵尸进程也跟着消失。


ps -e -o ppid,stat | grep Z | cut -d” ” -f2 | xargs kill -9



原文地址:https://www.cnblogs.com/sysk/p/4831591.html