【内网】服务器升级nginx1.17.0

avatar
作者
猴君
阅读量:0

今天用rpm包升级内网nginx版本,上来就给我报错

警告:nginx-1.27.0-2.el7.ngx.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 7bd9bf62: NOKEY
错误:依赖检测失败:
    libcrypto.so.10()(64bit) 被 nginx-1:1.27.0-2.el7.ngx.x86_64 需要
    libcrypto.so.10(OPENSSL_1.0.2)(64bit) 被 nginx-1:1.27.0-2.el7.ngx.x86_64 需要
    libcrypto.so.10(libcrypto.so.10)(64bit) 被 nginx-1:1.27.0-2.el7.ngx.x86_64 需要
    libssl.so.10()(64bit) 被 nginx-1:1.27.0-2.el7.ngx.x86_64 需要
    libssl.so.10(libssl.so.10)(64bit) 被 nginx-1:1.27.0-2.el7.ngx.x86_64 需要

根据文章error: Failed dependencies libcrypto.so.10()(64bit) is needed, libssl.so.10()(64bit) is needed-CSDN博客 去

https://pkgs.org/download/libcrypto.so.10()(64bit)

 下载新的包并且安装

然后又报了新的错

file /etc/logrotate.d/nginx from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /etc/nginx/nginx.conf from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /usr/lib/systemd/system/nginx.service from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /usr/sbin/nginx from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /usr/share/nginx/html/50x.html from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /usr/share/nginx/html/index.html from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64
    file /var/log/nginx from install of nginx-1:1.27.0-2.el7.ngx.x86_64 conflicts with file from package nginx-1:1.21.5-2.p01.ky10.x86_64

 看意思是旧的nginx包依赖和新的包依赖冲突了

把旧的依赖包删了安装新的依赖包


整合脚本如下

#!/bin/bash  # 定义rpm包文件名 RPM_FILE="nginx-1.27.0-2.el7.ngx.x86_64.rpm"  # 检查是否为root用户 if [ "$EUID" -ne 0 ]; then   echo "请使用root权限运行此脚本。"   exit 1 fi  # 检查RPM文件是否存在 if [ ! -f "$RPM_FILE" ]; then   echo "找不到文件 $RPM_FILE。请确保文件存在并重试。"   exit 1 fi  # 备份当前配置文件 cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak cp -r /usr/lib64/nginx/modules/ /usr/lib64/nginx/modules_bak/ rm -rf modules  # 安装依赖 rpm -ivh "compat-openssl10-1.0.2o-8.ky10.x86_64.rpm" echo "正在安装nginx..."  # 依赖包覆盖安装新的nginx rpm -ivh --replacefiles "$RPM_FILE" # 检查安装是否成功 if [ $? -eq 0 ]; then   echo "nginx安装成功!" else   echo "nginx安装失败。请检查错误信息。"   exit 1 fi  # 启动nginx服务 echo "正在启动nginx服务..."  /usr/sbin/nginx -c /etc/nginx/nginx.conf /usr/sbin/nginx -s reload systemctl daemon-reload systemctl restart nginx   # 设置nginx开机自启动 echo "正在设置nginx开机自启动..." systemctl enable nginx  echo "nginx安装和配置完成。" 

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!