删除/杀死一个不会死的进程

删除/杀死一个不会死的进程

我使用的是 Linux Ubuntu 20.04。

我有一个 PID 21 的进程:

PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
21  root      20   0       0      0      0 S   0.0   0.0   0:00.01 kdevtmpfs

运行后

  • sudo pkill -9 21
  • sudo kill 21

top该过程在或 的输出中仍然可见ps aux

我怎样才能杀死它?

答案1

正如 AB 指出的那样,这是 Linux 内核的一个线程(针对一项功能),因此无法被终止。此外,杀死/删除它也没有任何好处。

ps当使用如下参数调用时可以更清楚地看到:

# ps auxfww
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    Jun07   0:00 [kthreadd]
(...)
root        21  0.0  0.0      0     0 ?        S    Jun07   0:00  \_ [kdevtmpfs]
(...)

在那里你可以看到它是内核的后代。和RSS=0也是VSZ=0指标。

如果上述标志不适用于您的 版本ps,请尝试ps -ejfH以层次结构查看每个流程以及作业详细信息。

相关内容