1.使用top命令查看是否有僵尸进程
top
可以看到目前系统中有两个僵尸进程
2.定位僵尸进程
ps -ao stat,ppid,pid,cmd | grep -e '^[Zz]'
从左到右各项值的意思分别是:
Z:进程状态 3425:父进程ID 3457: 子进程ID [Xsession]: 命令
3.杀死僵尸进程
- 使用
kill -hup pid
杀死进程 - 使用
kill -hup ppid
杀死父进程,第一种不适用的情况下使用此方法
kill -hup 3457 # 通过pid杀死进程 # or kill -hup 3425 # 通过ppid杀死进程
4.检查
ps -ao stat,ppid,pid,cmd | grep -e '^[Zz]' # or top
参数解读
ps -A -ostat,ppid,pid,cmd |grep -e '^[Zz]'
- -a 参数列出所有进程
- -o 自定义输出字段 stat(状态)、ppid(进程父id)、pid(进程id)、cmd(命令)
- 因为状态为z或者Z的进程为僵尸进程,所以我们使用grep抓取stat状态为zZ进程
来源:https://www.cnblogs.com/youpeng/p/11820085.html