linux的nginx版本升级

一、查看 Linux 发行版信息(最常用)

查看 /etc/os-release(推荐,标准方式)

运行以下命令:

复制代码
cat /etc/os-release

🔍 ​输出示例(以 OpenCloudOS 为例):​

复制代码
NAME="OpenCloudOS"
VERSION="9.2"
ID="opencloudos"
ID_LIKE="rhel fedora"
VERSION_ID="9.2"
PLATFORM_ID="platform:oc9"
PRETTY_NAME="OpenCloudOS 9.2"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:opencloudos:opencloudos:9.2"
HOME_URL="https://www.opencloudos.org/"
BUG_REPORT_URL="https://bugs.opencloudos.org/"

🔎 你可以从中看到:

  • 系统名称(NAME)​ :比如 OpenCloudOSCentOSUbuntu
  • 版本号(VERSION 或 VERSION_ID)​ :比如 9.2
  • ID :比如 opencloudoscentosrhelubuntu
  • 是否兼容其它系统(ID_LIKE)​ :比如 rhel fedora 表示兼容 RHEL/Fedora

将当前 Ubuntu 22.04 系统上的 Nginx 从 1.18.0 升级到最新稳定版(如 1.27.x)​


🧩 当前情况回顾(根据你之前的反馈):

  • 操作系统:Ubuntu 22.04.5 LTS(Jammy Jellyfish)✅
  • 包管理器apt(不是 yum/dnf)✅
  • 当前 Nginx 版本1.18.0-6ubuntu14.7(来自 Ubuntu 官方源,稳定但较旧)✅
  • 已安装的 Nginx 相关包
    • nginx ------ 主包,版本 1.18.0
    • nginx-corenginx-common
    • 以及一堆官方模块:libnginx-mod-*
  • 你希望升级到:最新稳定版 Nginx(比如 1.27.x)​

⚠️ 重要说明:

Ubuntu 官方源(如 jammy-updates)中的 Nginx 版本通常是较旧的稳定分支(比如 1.18.x),不会自动更新到最新主线稳定版(比如 1.27.x)。​

如果你想安装或升级到 Nginx 官方最新的稳定版,必须添加 Nginx 官方维护的 APT 软件源!​


✅ 解决方案:添加 ​Nginx 官方 APT 源 ,然后安装/升级到 ​最新稳定版

Nginx 官方为 Ubuntu 提供了专门的软件源,里面的版本比 Ubuntu 默认源新得多,而且是 ​官方维护、安全、稳定​ 的。


✅ 一、升级步骤(详细 & 安全,适用于 Ubuntu 22.04)


🔧 步骤 1:安装必要的工具(用于导入官方 GPG 密钥)

运行以下命令,确保你有 curlgnupg2 和 Ubuntu 的 keyring 工具:

复制代码

bash

复制

复制代码
sudo apt update
sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring -y

🔐 步骤 2:导入 Nginx 官方 GPG 密钥

复制代码

bash

复制

复制代码
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

这会将 Nginx 官方的签名密钥导入系统,用于验证软件包来源,确保安全。


📥 步骤 3:添加 Nginx 官方 APT 软件源

运行以下命令,创建一个新的源列表文件:

复制代码

bash

复制

复制代码
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list

🔍 说明:

  • $(lsb_release -cs) 会自动展开为你的 Ubuntu 版本代号,比如 jammy(就是 22.04)
  • 这条命令会添加一个 仅包含 nginx 相关包的源,不会影响你系统其它软件包
  • 该源地址是:http://nginx.org/packages/ubuntu/jammy/nginx

🔄 步骤 4:更新 APT 软件包缓存

复制代码

bash

复制

复制代码
sudo apt update

🔍 步骤 5:查看可用的 Nginx 版本

运行以下命令,查看现在有哪些版本的 nginx 可供安装:

复制代码

bash

复制

复制代码
apt list -a nginx

🔒 你应该会看到类似如下的输出:

复制代码

markdown

复制

复制代码
nginx/jammy 1.18.0-6ubuntu14.7 amd64 [已安装]
nginx/jammy 1.27.1-1~jammy nginx

或:

复制代码

markdown

复制

复制代码
nginx/jammy 1.27.1-1~jammy nginx  <-- 最新稳定版
nginx/jammy,now 1.18.0-6ubuntu14.7 amd64 [已安装]

✅ 重点关注带有 nginx 后面版本号较高的那一个,比如 1.27.1-1~jammy,这就是 ​Nginx 官方的最新稳定版!​


⬆️ 步骤 6:升级(或安装)最新稳定版 Nginx

运行以下命令,让 apt 自动升级到可用的最新 nginx 版本(来自你刚添加的官方源):

复制代码

bash

复制

复制代码
sudo apt install nginx

⚠️ 如果你已经安装了 nginx(如你之前已经装了 1.18.0),这个命令会 ​自动升级到较新的可用版本(比如 1.27.1)​ ,前提是它来自 nginx.org 的源。

或者,你也可以明确指定升级:

复制代码

bash

复制

复制代码
sudo apt --only-upgrade install nginx

✅ 步骤 7:验证 Nginx 是否升级成功

① 检查 Nginx 版本

复制代码

bash

复制

复制代码
nginx -v

你应该会看到类似:

复制代码

markdown

复制

复制代码
nginx version: nginx/1.27.1

🎉 恭喜!说明你已经升级到了 ​Nginx 官方最新稳定版


② 检查 Nginx 运行状态

复制代码

bash

复制

复制代码
sudo systemctl status nginx

确保状态是:

复制代码

markdown

复制

复制代码
active (running)

如果未运行,可以启动:

复制代码

bash

复制

复制代码
sudo systemctl start nginx

并设置开机自启(如果还没设置):

复制代码

bash

复制

复制代码
sudo systemctl enable nginx

③ 访问你的网站

打开浏览器,访问你的服务器 IP:

复制代码

markdown

复制

复制代码
http://你的服务器IP

如果一切正常,你应该依然能看到 Nginx 的欢迎页面(或你的站点),​服务没有中断,功能一切正常!​


✅ 步骤 8(可选):移除旧源或清理(一般不需要)

你无需移除 Ubuntu 默认的 nginx 源,因为 APT 会优先使用 /etc/apt/sources.list.d/nginx.list 中的源(因为它明确提供了更高版本)。

但你可以随时查看当前 nginx 来自哪个源:

复制代码

bash

复制

复制代码
apt policy nginx

输出中会显示类似:

复制代码

markdown

复制

复制代码
nginx:
  已安装:1.27.1-1~jammy
  候选版本:1.27.1-1~jammy
  版本列表:
     1.27.1-1~jammy 500
        500 http://nginx.org/packages/ubuntu jammy nginx amd64 Packages
     1.18.0-6ubuntu14.7 500
        500 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages

你会看到 ​1.27.1 来自 nginx 官方源,优先级更高,已被安装 ✅


✅ 总结:升级到最新稳定版 Nginx(Ubuntu 22.04)的操作流程

步骤 操作 命令
1 安装必要工具 sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring -y
2 导入 Nginx 官方 GPG 密钥 `curl -fsSL https://nginx.org/keys/nginx_signing.key
3 添加 Nginx 官方 APT 源 `echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx"
4 更新软件包列表 sudo apt update
5 查看可用 nginx 版本 apt list -a nginx
6 升级到最新版 nginx sudo apt install nginxsudo apt --only-upgrade install nginx
7 检查版本 nginx -v
8 检查运行状态 sudo systemctl status nginx

✅ 你现在可以立即执行的完整升级命令(一键复制版)

复制代码

bash

复制

复制代码
# 1. 安装必要工具
sudo apt update
sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring -y

# 2. 导入 Nginx 官方 GPG 密钥
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

# 3. 添加 Nginx 官方 APT 源
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list

# 4. 更新软件包列表
sudo apt update

# 5. 升级 nginx 到最新稳定版
sudo apt install nginx

# 6. 检查版本
nginx -v

# 7. 检查运行状态
sudo systemctl status nginx
相关推荐
liguojun20251 小时前
篮球馆自动计时收费系统:从规则配置到自动结算的全流程拆解
java·大数据·运维·人工智能·物联网·1024程序员节
Promise微笑1 小时前
红外分辨率 160×120、320×240、384×288 与 640×480实战选型指南
大数据·运维·人工智能·物联网
顾喵2 小时前
PetaLinux 2017.4 实操指南:PREEMPT_RT实时补丁移植+Zynq PL中断UIO用户态配置(超完整避坑版)
linux
小樱花的樱花2 小时前
Linux 线程的创建
linux·c语言·开发语言
云飞云共享云桌面2 小时前
单机建模卡顿运维繁琐!中小型机械制造厂云飞云 3D 云桌面落地
运维·服务器·网络·3d·自动化·电脑·负载均衡
donoot2 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway
mounter6252 小时前
BPF 的进化史:从网络过滤器到 AI 时代的 Linux 核心引擎
linux·网络·人工智能·ebpf·linux kernel·kernel
YMWM_3 小时前
video.preset的值为null和ultrafast的区别
linux·video
zandy10113 小时前
体验家 XMPlus 批量操作与自动化工作流引擎:让大规模运营从手动执行走向规则驱动
大数据·运维·自动化
Sagittarius_A*4 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器