我使用的是 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
以层次结构查看每个流程以及作业详细信息。