什么原因导致“kill -9 pid”失败?

什么原因导致“kill -9 pid”失败?

我有一个 Linux 进程消耗了 100% 的 CPU,并且“kill -9 pid”不起作用。

这有点类似于:如何终止对 kill -9 不响应的进程

但我确信 pid 没有改变,这是父进程。我不认为它在等待 NFS。

过多的网络流量会导致这种情况吗?还有其他什么原因导致进程像这样卡住吗?除了重新启动之外我还能做什么?

答案1

通常,如果某个进程对“kill -9”没有响应,则表示它正在等待某些资源。有时是文件或网络读取,有时是它有一个尚未退出的子进程,正在等待被收割,或者它的父进程挂起而无法收割。在后一种情况下,进程将在“ps”中显示为“Z”(代表“僵尸”)状态。

答案2

如果进程处于不可中断睡眠状态,则无法在不消除睡眠原因的情况下将其终止,但我认为在该状态下它不会占用任何 CPU(据我所知,iowait 不是进程 CPU 利用率的一部分)。如果由于内核 OOPS 而无法终止进程 - 您最好重新启动。

答案3

ps auxfzombie-PID 有哪些子进程并尝试首先杀死它们。

相关内容