你是否遇到过这样的问题,不是你运维的系统,但是需要你帮忙查找问题原因,你不知道程序的启动目录,一般情况运维工程师都是去问之前的运维人员,但是有时候系统早就缺少维护了。谁都不知道启动程序所在。下面一条简短的命令,教会你如何通过进程号,查找程序启动目录。
第一步:通过进程名称查找进程号
代码安排:
# 一般查找一个进程的ID,以nginx为例
ps -ef | grep nginx
# 使用pidof命令查找进程ID
pidof nginx
# 使用pgrep命令查找进程ID
pgrep nginx
第二步:根据进程号查找程序启动目录
代码安排:
# 一般的查找方法,将下面进程号替换成第一步查到的进程号
ll /proc/进程号/exe
# 优化后的查找方法,不需要手动输入进程号
ll /proc/`pgrep nginx | sed -n '1p'`/exe
ll /proc/`pidof nginx | cut -d' ' -f1`/exe
第三步:根据进程号查找程序日志位置
代码安排:
# 不需要手动输入进程号,直接查找进程日志位置
ll /proc/`pgrep nginx | sed -n '1p'`/fd/ | grep log
示例:我的实操截图,供大家参考