一、查看 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) :比如
OpenCloudOS、CentOS、Ubuntu等 - 版本号(VERSION 或 VERSION_ID) :比如
9.2 - ID :比如
opencloudos、centos、rhel、ubuntu - 是否兼容其它系统(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.0nginx-core、nginx-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 密钥)
运行以下命令,确保你有 curl、gnupg2 和 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 nginx 或 sudo 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