nginx:[emerg] getpwnam(“nginx“)failed报错
在编译安装nginx时,启动nginx服务报如下错误:
nginx: [emerg] getpwnam("nginx") failed
原因
这里报错的原因是因为没有为nginx创建用户,解决方法就是创建一个nginx用户
说明
这里创建的用户是你安装Nginx时,预编译时指定的Nginx用户,
如下所示:
我这里指定的用户时nginx用户,所以需要提前创建一个nginx用户,如果你指定的是其它用户,则需要保证该用户是存在的
./configure \ --user=nginx \ --group=nginx \ --prefix=/usr/local/nginx-1.14.0 \ --with-http_stub_status_module \ --with-http_ssl_module
启动nginx出现nginx: [emerg] getpwnam(“nginx“) failed
问题以及复现过程
今天升级了nginx和openssl后在编译完nginx后无法启动,报出错误
发现是在编译前确定configure时指定了用户和组策略指定了–user=nginx和–group=nginx,导致无法启动
解决方法
直接命令添加
groupadd nginx useradd -s /sbin/nologin -M nginx
在编译前一步确定configure时,去除–user=nginx和–group=nginx然后重新编译
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持恩蓝小号。
原创文章,作者:HTEXK,如若转载,请注明出处:http://www.wangzhanshi.com/n/19165.html