根据 PID 查找确切的脚本

根据 PID 查找确切的脚本

我的主机上出现了一些问题,有太多入口进程正在运行。托管公司已授予我 SSH 访问权限,以便我可以更准确地监控情况,目前仅使用topps aux。我发现一个似乎没有完成的进程,它是一个 php 脚本lsphp。但是服务器上运行着许多 PHP 脚本,我需要找出导致问题的脚本。有没有办法找出该进程所连接的实际 PHP 脚本/文件,而不仅仅是该进程正在由运行lsphp

例如,pwdx 6608仅返回6608: /opt/cpanel/ea-php56/root/usr/bin告诉我这是一个 PHP 进程,但没有告诉我哪个实际的 PHP 脚本启动了该进程。

答案1

使用

ps -f -p {pid} 

列出启动进程的完整命令行。

如果这还不够的话,您可以使用以下命令获取该进程打开的文件列表:

lsof -p {pid}

输出很大,grep是您的朋友(保留常规文件,排除 PHP 运行时,包含文件路径等...)。但打开的文件可能会给您提示。

相关内容