我有几个Nginx的安装在我的服务器上,现在我似乎无法找出其中的当前运行Nginx的是从运行..找出程序从哪里运行?
我有PID是:12530
我可以用它来找到Nginx运行在哪里?
或者还有其他方法吗?
我有几个Nginx的安装在我的服务器上,现在我似乎无法找出其中的当前运行Nginx的是从运行..找出程序从哪里运行?
我有PID是:12530
我可以用它来找到Nginx运行在哪里?
或者还有其他方法吗?
编辑:等待,你有一个PID,它不像以下那样困难。只要看看输出:
$ sudo ls -l /proc/12530/exe
如果“里的Nginx是由运行”你的意思是“哪个特定的二进制”,你可以使用类似以下内容:
$ sudo lsof | grep nginx | grep txt
nginx 8100 root txt REG 202,1 7645520 1931225 /usr/sbin/nginx
...
。 。它告诉我/usr/sbin/nginx
的版本正在运行。您可能需要登录apt-get install lsof
。
看一看/proc/<PID>/
。它包含大量有关该过程的信息,并记录在proc(5)中。文件exe
将成为可执行文件的符号链接。 I.e:
$ ls -l /proc/11806/exe
lrwxrwxrwx 1 u u 0 Feb 7 13:15 /proc/11806/exe -> /usr/bin/emacs23-x
PID 11806正在运行emacs23-x可执行文件。
这是怎么回事?
lsof -p <pid> | grep txt
你是什么意思由“跑步”? –
我想要做的就是重新启动当前正在运行的nginx,但我无法找到如何..停止/etc/init.d/nginx停止似乎停止一些其他服务器,因为我的网页仍然在浏览器中加载 – Laine
'readlink -f/proc/12530/exe' –