普通视图

发现新文章,点击刷新页面。
昨天以前首页

linux 如何定位进程二进制文件路径

作者 obaby
2024年8月22日 17:41

公司的服务器,每个人部署的环境都不一样,光一个 nginx 都能玩出花来,找半天找不到可执行文件在哪里。当然是在不行可以用 find 命令。

但是这个 find 效率太低了,得 tm 搜索半天。

ps xua | grep nginx

看下进程信息,这尼玛,./nginx 这个.表明是切换到目录下去运行的,搜索一下可能有历史记录吧,直接 history

history | grep nginx

nice,这一下都能看出来 nginx 是通过源码编译安装的了,真就是符合 centos 的风格啊。

那如果 history 没有 呢?

那就下一步,既然 linux 一切皆文件,那就直接去进程找呗 数字为进程 pid。

ls -la /proc/22935/exe

这样就找到 nginx 的二进制文件路径了:/usr/local/nginx/sbin/nginx。

为啥不用 which 命令呢,因为直接执行 nginx 运行不了,which 命令自然也无法定位文件:

  •  
❌
❌