解决Nginx安装完成,没有sbin目录如何启动的问题
作者:喵喵爱自由
用户安装Nginx后因未生成sbin目录导致启动失败,尝试多种方法无效,最终发现需正确指定安装路径,进入/usr/local/nginx/sbin目录执行./nginx启动,或通过服务脚本启动
Nginx安装完成,没有sbin目录如何启动
错误描述
在linux系统(CentOS 7 64)上安装Nginx(nginx-1.18.0.tar.gz)完成后,没有生成sbin启动目录,用nginx -v查看版本提示命令未找到)****
问题1:没有生成sbin目录
试过以下几个解决办法但是都没有成功:
1)下载其他版本的tar的包重新安装,我试了安装1.19,但是还是没有sbin目录
网上找了另一个办法
1)找到报错的文件,在解压的nginx文件下src/os/unix/ngx_user.c,使用vim命令编辑它,并注释报错的地方,保存退出;
2)然后进入解压目录的objs文件夹下下,编辑Makefile文件,将-Werror删除
但是我在ngx_user.c下没有找到报错信息,然后去Makefile文件下删除了-Werror重新编译,同样没有生成sbin目录
3)网上说是由于root用户和个人用户原因导致看不到sbin目录,但是可以直接从rott根目录进行启动,但我试了一下还没有有成功!
4)最后找寻了半天才解决,操作如下:
cd进入到nginx-1.18.0目录内执行
[root@centos7 nginx-1.18.0]# ./configure --prefix=/usr/local/nginx [root@centos7 nginx-1.18.0]# make [root@centos7 nginx-1.18.0]# make install
ps:
- –prefix=path 定义一个目录,存放服务器上的文件 ,也就是nginx的安装目录,默认使用 /usr/local/nginx
- 这步你会看到local目录下有一个跟你安装的nginx1.12.2同级的nginx目录,里面就有sbin目录了。
启动
- cd /usr/local/nginx/sbin;输入./nginx 启动nginx。
- 如果nginx被配置成了服务可以这样启动/etc/init.d/nginx start
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。