简短回答:僵尸进程(zombie process)本身不是 bug,它是 Unix/Linux(包括 Debian)进程机制的正常设计;但如果系统里大量僵尸进程长期不消失,通常说明有 bug 或配置问题。
在 Linux/Debian 中:
wait() / waitpid() 来“收尸”Z(zombie)例如:
ps aux | grep Z
或
ps -eo pid,ppid,stat,cmd | awk '$3=="Z"'
✅ 正常情况(不是 bug)
wait()❌ 异常情况(通常是 bug / 问题)
常见原因:
SIGCHLD& 不 wait:容易留僵尸ps -eo pid,ppid,stat,cmd | awk '$3=="Z"'
kill -TERM <父进程PID>
wait())⚠️ 不能直接 kill 僵尸进程
kill -9 <zombie_pid> # 无效
只能杀父进程或让父进程回收。
如果你愿意,可以贴一下:
ps -eo pid,ppid,stat,cmd | awk '$3=="Z"'
我可以帮你判断是哪个程序的问题。