统计僵尸进程的数量

ps -ef | grep defunct | grep -v grep | wc -l

也可以用top命令

top - 23:04:21 up 775 days,  8:05,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 523 total,   1 running, 522 sleeping,   0 stopped,   0 zombie

zombie即为僵尸进程数量。

查找僵尸进程

ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'

命令注解:

-A 列出所有进程
-o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id),cmd(命令)这四个参数
因为状态为 z或者Z的进程为僵尸进程,所以我们使用grep抓取stat状态为zZ进程(Z 即zombie process)

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