如何毫无问题地找到 nginx 命令

如何毫无问题地找到 nginx 命令

我在使用 nginx 时遇到问题,正在执行以下操作:

nginx -t

我得到 -bash:nginx:未找到命令

root@vpslive /# find /usr/ -name 'nginx'
/usr/share/nginx

nginx 服务器正在运行,我担心重启时会出现问题

我该如何解决?

ps -aux

在此处输入图片描述

似乎 /usr/sbin/nginx 已被删除!如果我重新启动 nginx,会遇到一些问题,对吗?谢谢

pstree -p

在此处输入图片描述

在此处输入图片描述

答案1

编辑

系统中的 nginx 包已被卸载。重新安装该包即可解决问题。


执行 a ps -eF | grep nginx,并记下 PID;然后执行 a ls -a /proc/{PID}/exe

/proc/{PID}/exe应该是使用所述 PID 运行的可执行文件的符号链接。

答案2

如果您的 nginx 服务在端口 80 上运行,您可以从可用的运行进程中获取 nginx 二进制路径。

# lsof -i :80

它将给出 nginx 的进程 ID。然后从输出中找到 nginx 二进制路径

# lsof -i -p PID_from_last_commond | grep nginx

或者,你可以使用“locate”命令在服务器上搜索 nginx 二进制文件

# locate nginx

注意:如果服务器上没有定位命令,则需要安装并更新定位命令。

相关内容