我需要知道为什么这个子进程占用了我 208% 的 CPU。我认为找到它的路径名是个好主意。您知道如何找到它吗?
4910 root 20 0 9691M 2006M 7924 R 208. 12.2 15:17.23
java -server -d64 -Xmx4G -jar spigot.jar nogui -o false
(原始截图)
答案1
由于这是一个java
过程,所以答案的一半就在您提供的屏幕截图中。这部分就在这里:
-jar spigot.jar
因此,当该java
进程启动时,该spigot.jar
文件位于其当前工作目录 (CWD) 中。现在您只需确定 CWD 是什么。有很多方法可以做到这一点,我将介绍两种:
使用/proc
:
ls -ld /proc/4910/cwd
注意:根据需要替换“4910”。PID 可以并且将在重新启动和重新启动服务时发生变化。
/proc/PROCESS-ID/cwd
将是该进程的 CWD 的符号链接。
另一种方法是使用lsof
:
lsof -P -n -p 4910 | grep cwd
答案2
我没有返回您需要的进程。执行以下命令:
ps auxfww
并找到该过程,它将返回程序使用的带有参数的完整路径。