| 场景 | 僵尸进程累积 |
|---|---|
| 组合 | ps stat + 父进程定位 + 重启父进程 |
定位
定位
ps -eo stat,pid,ppid,cmd | awk '$1 ~ /^Z/' | head
ps -eo stat,pid,ppid,cmd | awk '$1 ~ /^Z/{print $3}' | sort | uniq -c | sort -rn # 谁制造了僵尸处理
处理
ps -o pid,stat,cmd -p <父PID> # 父进程在吗?
# 父进程健在但不回收 → 修复代码/升级版本;应急可重启父进程
# 父进程是自己写错脚本(没 wait)→ 补 wait 后重跑僵尸只占进程表项、几乎不占内存:少量短命僵尸无害,大量累积才代表父进程有 bug。