进程不响应,先分清是忙还是死。ps 看资源,strace 看系统调用,再决定怎么结束它。
操作步骤
ps aux --sort=-%mem | head # 按内存找元凶
kill -TERM 1234 # 礼貌请求退出
kill -9 1234 # 强制(最后手段)
strace -p 1234 # 看进程卡在哪
要点速览
- 先用 -TERM 给进程清理机会,-9 是强杀且不执行收尾,可能留脏状态。
- strace -p 能看到进程卡在哪个 syscall,是 IO 还是锁一目了然。
- 长期夯死要查根因(死锁/磁盘满),杀只是止血。
kill -9 是止血不是治疗,反复强杀要回去找根因。