centos 7:nginx 无法从文件 /run/nginx.pid 读取 PID:无效参数

Posted

技术标签:

【中文标题】centos 7:nginx 无法从文件 /run/nginx.pid 读取 PID:无效参数【英文标题】:centos 7: nginx Failed to read PID from file /run/nginx.pid: Invalid argument 【发布时间】:2017-07-21 13:06:28 【问题描述】:

安装 nginx 后可以访问 nginx 欢迎页面。然而,当我运行systemctl status nginx 时,我收到了这个警告:

systemd[1]:无法从文件 /run/nginx.pid 读取 PID:无效 论据

你能告诉我是什么导致了这个问题以及如何解决它吗?谢谢。

详细回复信息:

nginx.service - nginx HTTP 和反向代理服务器 已加载:已加载(/usr/lib/systemd/system/nginx.service;已启用;供应商预设:已禁用) 活动:自 2017 年 3 月 2 日星期四 06:43:24 CST 以来活动(运行); 2 秒前 进程:24007 ExecReload=/bin/kill -s HUP $MAINPID (code=exited, status=0/SUCCESS) 进程:8377 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) 进程:8374​​ ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) 进程:8373 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) 主PID:8380(nginx)CGroup:/system.slice/nginx.service |-8380 nginx:主进程 /usr/sbin/ngin `-8381 nginx:工作进程 Mar 02 06:43:24 VM_134_114_centos systemd[1]: 启动 nginx HTTP 和反向代理服务器... Mar 02 06:43:24 VM_134_114_centos nginx[8374]: nginx: 配置文件 /etc/nginx/nginx.conf 语法没问题 Mar 02 06:43:24 VM_134_114_centos nginx[8374]: nginx: 配置文件 /etc/nginx/nginx.conf 测试成功 3 月 2 日 06:43:24 VM_134_114_centos systemd[1]:无法从文件 /run/nginx.pid 读取 PID:参数无效 Mar 02 06:43:24 VM_134_114_centos systemd[1]: 启动 nginx HTTP 和反向代理服务器。

【问题讨论】:

【参考方案1】:

重新启动服务器为我解决了该错误。不漂亮,但效果很好。

【讨论】:

【参考方案2】:

我认为你不会修复它。

首先,请注意 PID 文件是在 Nginx 启动之前被有意删除的。您可以在发布的输出中看到:

ExecStartPre=/usr/bin/rm -f /run/nginx.pid

为什么?答案是Nginx service file中的评论:

# Nginx will fail to start if /run/nginx.pid already exists but has the wrong
# SELinux context. This might happen when running `nginx -t` from the cmdline.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268621
ExecStartPre=/usr/bin/rm -f /run/nginx.pid

因此,如果 Nginx 运行正常并且您可以正常停止/启动它,我认为您可以忽略日志中的警告。

【讨论】:

以上是关于centos 7:nginx 无法从文件 /run/nginx.pid 读取 PID:无效参数的主要内容,如果未能解决你的问题,请参考以下文章

NGinX 无法连接到 CentOS 7 上的 Jenkins

Linux 如何使用yum安装nginx

CentOS 7,使用yum安装Nginx

CentOS 7 yum 安装 Nginx

CentOs 7 yum 安装Nginx

centos7 安装gdb (调试nginx)