第 4 章 将您的系统从 RHEL 6 升级到 RHEL 7
在解决了 Preupgrade Assistant 报告的所有问题后,请使用 Red Hat Upgrade Tool 将系统从 RHEL 6.10 升级到 RHEL 7.9。执行所有必要的安装后任务,以确保您的系统保持最新状态,并防止出现与升级相关的问题。
先在一个安全的、非生产环境的系统中进行测试,然后再在生产环境的系统上进行升级过程。
先决条件
- 您已完成了为升级准备 RHEL 6 系统准备步骤,包括完整系统备份。
- 您已进行了预升级系统评估,并解决了所有报告的问题。详情请参阅评估系统升级的可行性。
流程
在以下位置之一,准备 RHEL 7 软件包的源仓库或介质:
- 从 DVD ISO 创建的安装仓库,您可以从其中下载 RHEL 7 软件包,例如:FTP 服务器或者包含 RHEL 7.9 软件包的 HTTPS 站点。如需更多信息,请参阅准备安装源。
- 挂载安装介质
ISO 镜像
在以上的任何选项中,您都可以配置自定义软件仓库和红帽提供的其他软件仓库。例如: RHEL 6 Base 系统中的特定软件包在 RHEL 7 Extras 软件仓库中提供,它们没有包括在 RHEL 7 DVD 中。
如果您知道您的系统需要的软件包不在 RHEL 7 Base 存储库中,则您可以安装一个单独的 RHEL 7 系统来作为通过 FTP 或 HTTP 提供所需软件包的
yum存储库。要设置升级过程中可以使用的额外软件仓库,请参阅如何创建本地软件仓库用于更新。然后,在
redhat-upgrade-tool命令中使用--addrepo=REPOID=URL选项。重要强烈建议您使用 RHEL 7.9 GA 源存储库来防止升级后引导问题。如需更多信息,请参阅 已知问题。
禁用活跃软件仓库以防止合并来自不同 RHEL 主版本的软件包时出现问题。
安装
yum-utils软件包:# yum install yum-utils禁用活跃的软件仓库:
# yum-config-manager --disable \*如需更多信息,请参阅是否可以安装来自不同 RHEL 版本的软件包。
运行 Red Hat Upgrade Tool 下载 RHEL 7 软件包并准备软件包安装。指定 Red Hat Enterprise Linux 7 软件包的位置:
安装软件仓库
# redhat-upgrade-tool --network 7.9 --instrepo ftp-or-http-url --cleanup-post挂载安装介质
# redhat-upgrade-tool --device device_path --cleanup-post如果没有指定设备路径,Red Hat Upgrade Tool 会扫描所有挂载的可移动设备。
ISO 镜像
# redhat-upgrade-tool --iso iso_path --cleanup-post重要在以上提到的三个方法中,您都可以在 redhat-upgrade-tool 命令使用以下选项:
-
--cleanup post:自动删除没有被相应的 RHEL 7 软件包替换的、红帽签名的软件包。推荐选项。如果不使用
--cleanup-post选项,您必须在原位升级后删除所有剩余的 RHEL 6 软件包,以确保您的系统被完全支持。 - --snapshot-root-lv 和 --snapshot-lv: 创建系统卷快照。如果升级失败,需要使用快照来回滚 RHEL 系统。如需更多信息,请参阅将 RHEL 6 升级到 RHEL 7 后的回滚和清理。
-
--cleanup post:自动删除没有被相应的 RHEL 7 软件包替换的、红帽签名的软件包。推荐选项。如果不使用
提示时重启系统。
# reboot根据要升级的软件包数量,这个过程可能需要几小时时间完成。
- 手动执行预升级结果中描述的任何升级后任务。
- 如果您的系统构架是 64 位 Intel,请从 GRUB Legacy 升级到 GRUB 2。如需更多信息,请参阅系统管理员指南。
-
如果在升级的主机上安装了 Samba,请手动运行
testparm工具来验证/etc/samba/smb.conf文件。如果实用程序报告任何配置错误,您必须在启动 Samba 前进行修复。 可选:如果您在运行红帽升级工具时没有使用
--cleanup-post选项,请清理孤立的 RHEL 6 软件包:# rpm -qa | grep .el6 &> /tmp/el6.txt # rpm -e $(cat /tmp/el6.txt) --nodeps警告请小心,不要意外删除与 RHEL 7 兼容的自定义软件包。
警告使用
rpm命令删除孤立的软件包可能会破坏某些 RHEL 7 软件包中的依赖项。有关如何 修复这些依赖关系 错误的信息,请参阅修复依赖项错误。将您的 RHEL 7 软件包更新至其最新版本。
# yum update # reboot
验证
验证系统已升级到最新版本的 RHEL 7。
# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.9 (Maipo)验证是否为 RHEL 7 自动重新订阅系统。
# yum repolist Loaded plugins: product-id, subscription-manager repo id repo name status rhel-7-server-rpms/7Server/x86_64 Red Hat Enterprise Linux 7 Server (RPMs) 23,676如果仓库列表不包含 RHEL 软件仓库,运行以下命令取消订阅系统,重新将系统订阅为 RHEL 7 系统,并添加所需的软件仓库:
# subscription-manager remove --all # subscription-manager unregister # subscription-manager register # subscription-manager attach --pool=poolID # subscription-manager repos --enable=repoID
如果在原位升级过程中或之后出现任何问题,请参阅 故障排除 来寻求帮助。