加油
努力

如何将CentOS 8.2系统安全升级到8.4版本?

将 CentOS 8.2 安全地升级到 CentOS 8.4 是一项需要谨慎操作的任务,因为系统升级可能影响服务运行、软件兼容性和安全性。以下是详细的步骤和建议,确保升级过程尽可能安全可靠。


⚠️ 重要提示

  1. CentOS 8 生命周期
    CentOS 8 已于 2021 年 12 月 31 日停止维护(EOL)。这意味着官方不再提供更新或安全补丁。建议尽快迁移到替代方案,如:

    • AlmaLinux
    • Rocky Linux
    • Oracle Linux

    即使你现在升级到 8.4,系统仍然在 EOL 状态,存在安全风险。

  2. 如果你仍需进行此升级(例如测试环境),请务必做好完整备份并评估风险。


✅ 升级步骤(从 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

🔐 安全建议

  1. 升级前关闭非必要服务,避免升级过程中出现文件锁定或冲突。
  2. 使用 tmux/screen 运行升级命令,防止 SSH 断开导致中断。
  3. 检查日志:
    journalctl -b
    cat /var/log/dnf.log
  4. 测试关键应用是否正常运行。
  5. 如使用 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。


如果你提供具体场景(如生产服务器、虚拟机、物理机等),我可以给出更定制化的迁移建议。

云服务器