Red Hat于2022年5月17日宣布全面推出RHEL 9。这是 RHEL(Red Hat Enterprise Linux)的最新版本,它具有许多功能和增强功能。
值得注意的亮点包括:
- 新软件版本包括 PHP 8.0、Ruby 3.0、Perl 5.32、Node.JS 16 等等。
- SELinux 和 OpenSSH 服务中的安全性增强。
- 使用 Web 控制台增强性能监控。
- 从 Web 控制台进行实时内核修补。
- 引入用于创建多种格式的自定义 RHEL 系统映像的映像生成器工具。
有关所有有趣的新功能和增强功能的完整列表,请访问RHEL 9 发行说明: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html-single/9.0_release_notes/index
在本指南中,我们将通过截图逐步向您展示如何从 RHEL 8 升级到 RHEL 9。
先决条件
在开始之前,这是您需要的。
- RHEL 8.6 的一个实例
- 用于执行升级的快速稳定的互联网连接
- 最小引导分区 100 MB
满足最低要求后,让我们开始吧。
1. 删除 'tmp_leapp_py3' 目录
如果您之前曾从 RHEL 7 迁移到 RHEL 8,那么您需要删除 /root/tmp_leapp_py3 目录。使用下面的 rm 命令
$ sudo rm -Rf /root/tmp_leapp_py3
但是,如果您是从全新安装的 RHEL 8 开始,请跳过此步骤并继续进行。
2. 确保您的系统具有有效的 Red Hat 订阅
要按计划进行升级,请确保您拥有有效的 Red Hat 订阅。要验证您是否有活动订阅,请运行以下命令:
$ sudo subscription-manager list --installed
如果您的系统有订阅,会得到以下输出。
如果您的系统尚未注册到 Red Hat 订阅管理,请在命令行中注册它,如图所示。
用户名和密码凭据是您 Red Hat 帐户的登录详细信息。
3. 确保已启用适当的仓库
接下来,您需要确保启用了所需的仓库。此命令启用 64 位 Intel 架构的 Base 和 App 流仓库。
$ sudo subscription-manager repos --enable rhel-8-for-x86_64-baseos-rpms --enable rhel-8-for-x86_64-appstream-rpms
4. 将系统锁定到 RHEL 8.6
接下来,将您的 RHEL 系统锁定到 RHEL 8.6。这标志着升级将从其开始的 RHEL 版本。
$ sudo subscription-manager release --set 8.6
5. 启用 RHUI 仓库(仅适用于 AWS 实例)
如果您正在运行托管在 AWS 上的 RHEL 8 实例,则需要启用并安装所需的 Red Hat Update Infrastructure 仓库,以便为升级做好系统准备。
$ sudo dnf config-manager –set-enabled rhui-client-config-server-8
$ sudo dnf -y install rh-amazon-rhui-client-ha leapp-rhui-aws
6. 将软件包更新到最新版本
接下来,请务必将所有软件包升级到最新版本。
$ sudo dnf update
完成后,重新启动系统。
$ sudo reboot
7. 安装leapp-upgrade软件包
接下来,安装 leapp-upgrade工具,该工具将自动从 RHEL 8 升级到 RHEL 9
$ sudo dnf install leapp-upgrade
8. 移除 Versionlock 插件
Versionlock 是一个插件,可以保护包不被升级到新版本。如果您已经设置了此项,则需要清除如下所示。
$ sudo dnf versionlock clear
9. 修改 Firewalld 配置
为了升级顺利进行,您需要在 Firewalld 配置中禁用AllowZoneDrifting值。因此,访问 firewalld 配置文件。
$ sudo vi /etc/firewalld/firewalld.conf
向下滚动并注释AllowZoneDrifting属性。
保存更改并退出配置文件。
10. 执行预升级
在执行实际升级之前,建议先执行升级前检查。这模拟了实际升级,并在发现任何阻碍升级的错误时提供报告。
因此,运行以下命令来运行升级前检查。
$ sudo leapp preupgrade --target 9.0
该命令检查所有系统配置,包括内核、驱动程序,并提供将要安装、升级和删除的软件包总数的摘要。它还提供了将被降级的包的数量以及新包的总下载大小。
预升级检查报告生成并保存在/var/log/leapp/leapp-report.json和/var/log/leapp/leapp-report.txt文本文件中。
11. 从 RHEL 8 升级到 RHEL 9
此时,我们已准备好执行从 RHEL 8 到 RHEL 9 的就地升级。为此,请运行以下命令
$ sudo leapp upgrade --target 9.0
升级会下载新软件包并将现有软件包升级到新版本。一些过时的包也被删除,一些被降级。在快速稳定的网络连接下,这大约需要 20 分钟。
最后,您将需要重新启动系统。有关升级的详细信息记录或保存在/var/log/leapp/leapp-report.json和/var/log/leapp/leapp-report.txt文本文件中。
12. 选择 RHEL-Upgrade-Initramfs GRUB 条目
重新启动后,从 GRUB 菜单中选择 RHEL-Upgrade-Initramfs 条目。
接下来,按 CTRL + D 继续升级。
这需要相当长的时间,因此请耐心等待升级的进行。完成后,系统将重新启动。这一次,您将看到RHEL 9.0的菜单选项。按“ ENTER ”选择此选项
13. 登录到 RHEL 9系统
在登录屏幕上,提供您的登录密码并点击“ ENTER ”
登录后,RHEL 9桌面将显示新外观的GNOME 42。
此外,您可以通过运行以下命令来验证升级是否成功:
$ cat /etc/redhat-release
此外,请确认它是 RHEL 订阅的一部分。
$ sudo subscription-manager list --installed