CentOS 7.9(已升级非官方5.4.154内核)升级至CentOS 8.4方案咨询
CentOS 7.9 升级到 CentOS 8.4 标准操作流程
重要前置提醒:跨大版本升级存在极高数据丢失、系统损坏风险,操作前必须完成全量整机数据备份,包含业务数据、服务配置、分区表,可优先做整机快照后再进行操作
第一步:回退到CentOS 7官方标准内核
你当前使用的非官方5.4.154内核会直接导致升级环节出现包冲突,必须先回退:
- 查看当前系统所有已安装内核:
rpm -qa | grep kernel - 先安装CentOS 7官方内核系列:
yum install -y kernel kernel-devel kernel-headers - 修改grub默认启动项为刚安装的3.10.x系列官方内核:
grub2-set-default 0
(若默认排序不对,可先执行grep 'menuentry ' /boot/grub2/grub.cfg查看内核顺序,对应调整序号即可) - 重启系统,执行
uname -r确认当前运行内核为3.10.x系列官方版本后,卸载所有非官方5.4相关内核包即可。
第二步:清理CentOS 7运行环境
- 将当前CentOS 7所有系统包更新到最新版本:
yum update -y - 安装升级所需依赖工具:
yum install -y epel-release rpmconf yum-utils - 处理现有配置文件冲突:
rpmconf -a
遇到配置对比提示时,不确定修改内容就选择保留原有配置 - 清理系统无用孤儿包:
package-cleanup --leaves
确认输出的包均无业务依赖后,执行package-cleanup --orphans删除 - 卸载所有非官方第三方源、内核相关残留包,避免后续升级冲突。
第三步:替换包管理器为dnf
- 安装dnf包管理器:
yum install -y dnf - 移除旧的yum相关组件避免冲突:
dnf remove -y yum yum-metadata-parser - 备份原有yum源配置目录:
mv /etc/yum.repos.d /etc/yum.repos.d.bak
第四步:执行系统升级到8.4版本
- 提前从CentOS官方镜像站下载对应8.4版本的centos-release rpm包到本地,执行本地安装:
dnf install -y ./centos-release-8.4-1.2105.el8.x86_64.rpm centos-gpg-keys centos-repos - 执行全系统版本同步升级:
dnf distro-sync -y --releasever=8.4.2105 - 若过程中出现包冲突报错,优先卸载对应的CentOS 7遗留第三方包后,重新执行上述同步命令即可,禁止强制跳过依赖校验。
第五步:升级后校验
- 重启系统后,执行
cat /etc/centos-release确认输出为CentOS Linux release 8.4.2105 - 执行
uname -r确认当前运行内核为4.18.x系列CentOS 8官方版本 - 逐一验证业务服务、配置文件、依赖包运行状态,确认功能正常。
若升级后出现个别服务无法启动的情况,可先执行
dnf install重新安装对应服务的CentOS 8版本,适配新的系统依赖。
内容的提问来源于stack exchange,提问作者zoroloz
相关产品推荐
相关产品推荐

