Nginx安装完成,没有sbin目录如何启动

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

当您在Linux系统中安装Nginx但找不到`sbin`目录时,这可能是因为Nginx安装没有默认将可执行文件放置在传统的`/sbin`位置,而是选择了一个不同的位置。Nginx通常会将sbin(system binary)目录包含在其自定义的安装路径中,例如`/usr/local/nginx/sbin`或`/opt/nginx/sbin`,特别是在使用自定义安装或者非标准软件包管理器(如Apt、Yum之外的)时。 有几个可能的原因: 1. **非标准安装**:如果使用了非标准的安装方法,比如手动下载源代码并编译,或者使用了特定的包管理工具(如`nginx-extras`),Nginx可能会被安装到非传统路径。 2. **配置文件**:检查`nginx.conf`或其他配置文件中的`sbin_path`或`prefix`变量,以确定Nginx实际查找sbin的路径。 3. **软件包管理**:某些发行版(如Debian或Ubuntu的`nginx`包)可能会将其可执行文件放在其他位置,如`/usr/bin`。 4. **更新或重新安装**:如果你之前安装Nginx然后进行了更新或卸载,新的安装可能没有保留旧的sbin目录。 为了解决这个问题,你可以按照以下步骤操作: - **检查安装位置**:通过`which nginx`命令找到Nginx的实际可执行文件路径。 - **修改配置**:如果需要,可以在`nginx.conf`中更改`sbin_path`。 - **软链接**:如果sbin文件在预期位置,但`/sbin`目录不存在,可以创建一个软链接指向正确的路径。 - **更新权限**:确保Nginx可执行文件的权限正确,以便系统用户可以访问。 相关问题: 1. Nginxsbin文件默认会在哪个位置寻找? 2. 如何查看Nginx安装路径? 3. 如何通过配置文件修改sbin路径?
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值