Linux 下僵尸进程的清理方法

jackxiang 2013-8-15 17:58 | |

平时很多时候发现定时检测的脚本kill 之后,该进程会僵死在里面,无法清理。可以参考下面的方法清理:

有以下环境的进程:


#ps aux |grep monitorast.pl
root      3962  0.0  1.5   5652  3840 ?        Ss   10:13   0:00 /usr/bin/perl -w /root/script/monitorast.pl
root      5135  0.0  0.2   3920   740 pts/0    S+   10:52   0:00 grep monitorast.pl



# kill -9 3962 之后的进程状态:

# ps aux |grep monitorast.pl
root      3962  0.0  0.0      0     0 ?        Zs   10:13   0:00 [monitorast.pl] <defunct>
root      5196  0.0  0.2   3916   668 pts/0    R+   10:52   0:00 grep monitorast.pl



之后再无法使用kill 来清除,那么要清理必须从调用的进程处来kill

#ps axjf



    1  2616  2616  2616 ?           -1 Ss       0   0:00 crond
2616  3960  2616  2616 ?           -1 S        0   0:00  /_ crond
3960  3962  3962  3962 ?           -1 Zs       0   0:00      /_ [monitorast.pl] <defunct>
3960  3970  2616  2616 ?           -1 S       51   0:00      /_ /usr/sbin/sendmail -FCronDaemon -i -odi -oem -oi -t



经过这里的判断,调用的进程没有影响系统的其他任务在运行,所以可以直接kill父进程。

# kill -9 3960

# ps aux |grep monitorast.pl
root      5364  0.0  0.2   3916   676 pts/0    R+   10:58   0:00 grep monitorast.pl



现在可以看到现在没有啦。

来自:http://blog.csdn.net/radkitty/article/details/5426799

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/6587/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!

评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]