将 CentOS 8.2 安全地升级到 CentOS 8.4 是一项需要谨慎操作的任务,因为系统升级可能影响服务运行、软件兼容性和安全性。以下是详细的步骤和建议,确保升级过程尽可能安全可靠。
⚠️ 重要提示
-
CentOS 8 生命周期:
CentOS 8 已于 2021 年 12 月 31 日停止维护(EOL)。这意味着官方不再提供更新或安全补丁。建议尽快迁移到替代方案,如:- AlmaLinux
- Rocky Linux
- Oracle Linux
即使你现在升级到 8.4,系统仍然在 EOL 状态,存在安全风险。
-
如果你仍需进行此升级(例如测试环境),请务必做好完整备份并评估风险。
✅ 升级步骤(从 CentOS 8.2 到 8.4)
注意:以下操作应在具备 root 权限的用户下执行,并确保系统当前可访问网络和正确的软件源。
第一步:备份系统和数据
# 建议使用 tar、rsync 或专业工具(如 Bacula)进行完整系统备份
tar -czf /backup/centos8-backup-$(date +%F).tar.gz --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/backup /
同时记录关键配置:
rpm -qa > /root/packages-before-upgrade.txt
cp -r /etc /root/etc-backup-$(date +%F)
第二步:更新当前系统到最新状态
dnf clean all
dnf update -y
重启系统以应用内核更新:
reboot
第三步:检查当前版本
cat /etc/redhat-release
# 应显示:CentOS Linux release 8.2.2004 (Core)
第四步:安装 dnf-plugin-system-upgrade(可选但推荐)
虽然 dnf system-upgrade 主要用于跨主版本升级(如 7→8),但对于次版本升级通常不强制使用。但我们仍可尝试通过常规更新方式升级。
实际上,CentOS 8 的次版本(如 8.2 → 8.4)是通过常规 DNF 更新实现的,无需特殊插件。
第五步:升级到 CentOS 8.4
方法一:使用标准 DNF 更新(推荐)
dnf update --releasever=8.4 -y
此命令会将系统所有包升级到 8.4 版本对应的最新版本。
如果提示缺少元数据或仓库问题,请先清理缓存:
dnf clean all
rm -rf /var/cache/dnf
然后重试更新。
方法二:手动修改 repo 配置(仅当上述失败时)
编辑 /etc/yum.repos.d/CentOS-Linux-* 文件中的 baseurl 或启用镜像站:
示例(使用阿里云镜像):
# /etc/yum.repos.d/CentOS-Linux-BaseOS.repo
[baseos]
name=CentOS Linux $releasever - BaseOS
baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
其他 repo(AppStream、Extras 等)也做类似修改,将 $releasever 明确为 8.4 或保留变量。
保存后再次运行:
dnf clean all
dnf update -y
第六步:重启并验证版本
reboot
登录后检查版本:
cat /etc/redhat-release
# 应显示:CentOS Linux release 8.4.2105 (Core)
uname -r
# 查看内核是否已更新
rpm -q centos-linux-release
第七步:清理旧包(可选)
dnf autoremove -y
dnf clean all
🔐 安全建议
- 升级前关闭非必要服务,避免升级过程中出现文件锁定或冲突。
- 使用 tmux/screen 运行升级命令,防止 SSH 断开导致中断。
- 检查日志:
journalctl -b cat /var/log/dnf.log - 测试关键应用是否正常运行。
- 如使用 SELinux,确保其处于 enforcing 模式且无 AVC 拒绝。
❌ 替代建议:迁移至 AlmaLinux/Rocky Linux
由于 CentOS 8 已 EOL,更安全的做法是迁移到与 RHEL 8 兼容的替代发行版:
推荐迁移路径:
- AlmaLinux Migration Tool
- Rocky Linux Conversion Guide
这些工具可以将 CentOS 8 在线转换为长期支持的发行版。
总结
| 步骤 | 操作 |
|---|---|
| 1 | 备份系统和配置 |
| 2 | dnf update 到 8.2 最新状态 |
| 3 | dnf update --releasever=8.4 -y |
| 4 | 重启并验证版本 |
| 5 | 检查服务和日志 |
📌 再次强调:CentOS 8 已停止维护,升级到 8.4 不解决安全问题。强烈建议迁移到 AlmaLinux、Rocky Linux 或升级至 CentOS Stream / RHEL。
如果你提供具体场景(如生产服务器、虚拟机、物理机等),我可以给出更定制化的迁移建议。
云小栈