openEuler-22.03-LTS-x86_64离线安装nginx过程记录

给了台机器,是新系统,通过堡垒机访问,不通互联网,环境的安装就变得相当麻烦,先把过程记录下来,方便以后再次安装时可以有资料可查

首先,需要安装tar命令包

进入官网rpm包仓库,

https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64/Packages/

找到并下载tar的rpm包tar-1.34-1.oe2203.x86_64.rpm

上传到服务器上,使用rpm命令安装tar

rpm -ivh tar-1.34-1.oe2203.x86_64.rpm

然后到nginx官网,nginx: download下载最新的稳定版本的gz.tar包,我下载的版本是1.26.2

上传到服务器/usr/local/目录,解压缩

tar -zxvf nginx-1.26.2.gz.tar

进入解压好的nginx-1.26.2目录,执行命令

./configure
<
<think>我们根据引用内容,结合openEuler22.03系统离线安装Nginx的需求,整理详细步骤。引用[1]提到了离线安装的目录结构,引用[2]提供了依赖库的安装,引用[3]则给出了具体操作(如zlib降级安装)的例子。注意:离线安装需要提前下载好所有依赖包和Nginx安装包,并上传到目标服务器。步骤概览:1.环境检查与准备2.下载所需安装包(包括Nginx和依赖包)3.安装依赖库(注意依赖库的版本和兼容性,特别是引用[3]中提到zlib可能需要降级)4.安装Nginx5.配置服务(开机自启、防火墙、常用命令)详细步骤:一、环境检查1.1系统版本:openEuler22.03LTS(使用命令`cat/etc/os-release`确认)1.2检查必要工具:gcc,make,autoconf,automake等(如果没有,需要离线安装)1.3检查依赖库:PCRE,Zlib,OpenSSL(如果没有,需要离线安装)二、下载安装包(离线)2.1在另一台有网络的openEuler22.03系统上,使用yum下载Nginx及其依赖的rpm包(包括所有依赖),然后拷贝到目标机器。-创建下载目录:`mkdirnginx-offline&&cdnginx-offline`-下载nginx:`yuminstall--downloadonly--downloaddir=./nginx`-下载依赖:根据引用[2]提到的依赖,我们还需要确保gcc,make,autoconf,automake,pcre,pcre-devel,zlib,zlib-devel,openssl,openssl-devel等包。例如:`yuminstall--downloadonly--downloaddir=./gccmakeautoconfautomakepcrepcre-develzlibzlib-developensslopenssl-devel`-将整个目录打包,复制到目标机器。2.2或者,从官网下载Nginx源码包(如nginx-1.xx.x.tar.gz)以及所有依赖库的源码包(pcre,zlib,openssl等),然后在目标机器上编译安装。但考虑到引用[3]中使用了rpm安装,我们这里优先使用rpm方式。三、安装依赖库3.1进入存放rpm包的目录3.2安装所有依赖(注意安装顺序,基础库先安装,再安装devel包)`rpm-ivh*.rpm`#但这样可能会因为依赖顺序而失败,建议逐个安装或按顺序安装如果遇到依赖问题,可以尝试先安装基础包,再安装devel包。3.3特别注意:引用[3]中提到zlib可能需要降级安装。如果遇到zlib版本冲突,可以尝试降级:`rpm-Uvh--oldpackagezlib-1.2.11-19.oe2203.x86_64.rpm`#降级zlib`rpm-ivhzlib-devel-1.2.11-19.oe2203.x86_64.rpm`#安装zlib-devel四、安装Nginx4.1使用rpm安装nginx:`rpm-ivhnginx-*.rpm`4.2如果使用源码安装(当没有rpm包时):-解压nginx源码包:`tarzxvfnginx-1.xx.x.tar.gz`-进入目录:`cdnginx-1.xx.x`-配置:`./configure--prefix=/usr/local/nginx`(如果需要指定依赖库路径,请使用--with-pcre,--with-zlib,--with-openssl等参数)-编译:`make`-安装:`makeinstall`五、开机自启服务5.1如果使用rpm安装,通常会自动创建systemd服务,可以使用:`systemctlenablenginx`#设置开机自启`systemctlstartnginx`#启动服务5.2如果使用源码安装,需要手动创建服务文件:-创建文件`/usr/lib/systemd/system/nginx.service`,内容如下:[Unit]Description=ThenginxHTTPandreverseproxyserverAfter=network.target[Service]Type=forkingPIDFile=/usr/local/nginx/logs/nginx.pidExecStartPre=/usr/local/nginx/sbin/nginx-tExecStart=/usr/local/nginx/sbin/nginxExecReload=/usr/local/nginx/sbin/nginx-sreloadKillSignal=SIGQUITTimeoutStopSec=5KillMode=processPrivateTmp=true[Install]WantedBy=multi-user.target-然后执行:`systemctldaemon-reload``systemctlenablenginx``systemctlstartnginx`六、开放防火墙端口6.1如果防火墙开启,需要开放80端口(或nginx配置的端口):`firewall-cmd--permanent--add-port=80/tcp``firewall-cmd--reload`七、常用命令-启动:`systemctlstartnginx`-停止:`systemctlstopnginx`-重启:`systemctlrestartnginx`-重载配置:`systemctlreloadnginx`-查看状态:`systemctlstatusnginx`注意:以上步骤中,使用rpm方式安装需要确保下载的rpm包适用于openEuler22.03。如果官方源没有nginx,可以考虑从其他兼容源获取,或者使用源码编译。由于引用[3]中提到了zlib降级,说明依赖库版本可能很关键。如果遇到问题,请检查依赖库的版本是否匹配。根据引用[2]和引用[3],我们更推荐使用rpm方式安装,因为可以避免复杂的依赖处理。但是,如果rpm包不可用,源码安装是备选方案。问题:用户要求离线安装,所以必须提前在有相同版本系统的机器上下载好所有包。最后,验证安装:在浏览器访问服务器IP,或使用命令`curlhttp://localhost`查看nginx欢迎页面。注意:以上步骤仅供参考,实际操作中可能会因环境差异而需要调整。</think>### openEuler 22.03 离线安装 Nginx 详细教程 #### 一、环境检查与准备 1. **系统确认** ```bash cat /etc/os-release # 确认系统为 openEuler 22.03 LTS ``` 2. **依赖库清单**(需提前离线下载): - 构建工具:`gcc`, `make`, `autoconf`, `automake` - 核心依赖:`pcre`, `pcre-devel`, `zlib`, `zlib-devel`, `openssl`, `openssl-devel` [^2] - Nginx 安装包(推荐稳定版如 `nginx-1.18.0.tar.gz`) --- #### 二、离线下载安装包 > **操作前提**:在一台**有网络**的 openEuler 22.03 设备上操作 1. **下载依赖库**(保存到本地目录如 `/opt/nginx-offline`): ```bash mkdir /opt/nginx-offline yum install --downloadonly --downloaddir=/opt/nginx-offline \ gcc make autoconf automake \ pcre pcre-devel zlib zlib-devel \ openssl openssl-devel ``` 2. **下载 Nginx 源码包**: ```bash wget -P /opt/nginx-offline https://nginx.org/download/nginx-1.18.0.tar.gz ``` 3. 将 `/opt/nginx-offline` 目录打包,传输到目标服务器--- #### 三、离线安装依赖库 > **在目标服务器执行** 1. **安装所有依赖**: ```bash cd /path/to/nginx-offline rpm -ivh *.rpm --nodeps --force # 强制安装所有 RPM 包 ``` 2. **处理 zlib 冲突**(如遇版本问题)[^3]: ```bash rpm -Uvh --oldpackage zlib-1.2.11-19.oe2203.x86_64.rpm # 降级 zlib rpm -ivh zlib-devel-1.2.11-19.oe2203.x86_64.rpm # 安装开发包 ``` --- #### 四、编译安装 Nginx 1. **解压并编译**: ```bash tar zxvf nginx-1.18.0.tar.gz cd nginx-1.18.0 ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-pcre \ --with-zlib make && make install ``` 2. **验证安装**: ```bash /usr/local/nginx/sbin/nginx -v # 输出版本号即成功 ``` --- #### 五、配置系统服务 1. **创建 systemd 服务文件**: ```bash cat > /etc/systemd/system/nginx.service <<EOF [Unit] Description=The nginx HTTP server After=network.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit [Install] WantedBy=multi-user.target EOF ``` 2. **启用服务**: ```bash systemctl daemon-reload systemctl enable --now nginx # 启动并设置开机自启 ``` --- #### 六、防火墙与验证 1. **开放端口**: ```bash firewall-cmd --permanent --add-port=80/tcp firewall-cmd --reload ``` 2. **访问测试**: ```bash curl http://localhost # 应返回 Nginx 欢迎页 ``` --- #### 七、常用命令 ```bash systemctl start nginx # 启动 systemctl stop nginx # 停止 nginx -s reload # 重载配置 journalctl -u nginx -f # 查看实时日志 ``` > **注意事项**: > - 离线安装需确保所有依赖包与系统架构(x86_64/aarch64)匹配。 > - 若编译失败,检查 `./configure` 输出中的缺失依赖项。 > - 源码安装路径为 `/usr/local/nginx`,配置文件位于 `conf/nginx.conf`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值