【内网】服务器升级nginx1.17.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包依赖和新的包依赖冲突了

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


整合脚本如下

bash 复制代码
#!/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安装和配置完成。"
相关推荐
济617几秒前
linux 系统移植(第二十四期)---- 根文件系统其他功能测试---- Ubuntu20.04根文件系统其他功能测试
linux·运维·服务器
十年编程老舅几秒前
字节跳动 Linux C/C++ 后端 面经
linux·后端面试·八股文·字节跳动·面试八股文·服务器面试
济6171 分钟前
linux 系统移植(第二十五期)---- 运用MfgTool 工具进行linux系统烧写---- Ubuntu20.04
linux·运维·服务器
EverydayJoy^v^2 分钟前
RH134简单知识点——第10章——控制启动过程
linux·服务器·网络
lysine_2 分钟前
实现ubuntu两个网口桥接
linux·服务器·网络·arm开发·ubuntu
waves浪游11 分钟前
Ext系列文件系统
linux·服务器·开发语言·c++·numpy
独自归家的兔13 分钟前
CentOS 8 系统下的包依赖冲突问题
linux·运维·centos
王大傻092818 分钟前
kali-linux-2025.4 鼠标不显示的问题 --- 已解决
linux·服务器·网络安全
一池秋_30 分钟前
aarch64_Ubuntu (Linux)连不上adb解决方法
linux·ubuntu·adb
_OP_CHEN33 分钟前
【Linux系统编程】(二十四)深入 Ext2 块组内部:inode、数据块与目录的底层工作机制
linux·操作系统·文件系统·c/c++·inode·块组·数据块映射