10.2. 使用 Boom Boot Manager 升级至另一个版本
使用 Boom Boot Manager 执行 Red Hat Enterprise Linux 操作系统的升级。
先决条件
- 您正在运行 Red Hat Enterprise Linux 8.8 或 8.10。
-
您已安装了
boom-boot
软件包的当前版本(版本 boom-boot-1.3-2.el8 或更高版本)。 - 您有足够的空间用于快照。根据原始安装的大小估计大小。列出所有挂载的逻辑卷。
-
您已安装
leapp
软件包。 - 您已启用了软件存储库。
其他文件系统可能包括 /usr 或 /var。
流程
创建您的 root 逻辑卷快照:
如果您的 root 文件系统使用精简配置,请创建一个精简快照:
# lvcreate -s rhel/root -kn -n root_snapshot_before_changes Logical volume "root_snapshot_before_changes" created.
在这里:
-
-s
创建快照。 -
rhel/root
将文件系统复制到逻辑卷。 -
-kn
在引导时自动激活 LV。 -n root_snapshot_before_changes
显示快照的名称。在创建精简快照时,不要定义快照大小。快照从精简池中分配。
-
如果您的 root 文件系统使用 thick 置备,请创建一个 thick 快照:
# lvcreate -s rhel/root -n root_snapshot_before_changes -L 25g Rounding up size to full physical extent 25 GiB Logical volume "root_snapshot_before_changes" created.
在这个命令中:
-
-s
创建快照。 -
rhel/root
将文件系统复制到逻辑卷。 -
-n root_snapshot_before_changes
显示快照的名称。 -L 25g
是快照大小。根据原始安装的大小估计大小。在创建厚快照时,定义可保存升级过程中所有更改的快照大小。
重要创建的快照不包括任何其他系统更改。
-
创建配置集:
创建配置文件需要特定于架构的临时解决方案,以避免
kexec-tools
或kdumpctl
和boom
间的交互。在升级过程中,更新的kexec-tools
软件包尝试使用更新的crashkernel
设置修改所有引导条目。这会删除条目使用的引导镜像。您可以通过将 RHEL 9crashkernel
设置附加到 RHEL 8 配置文件选项中来避免这个问题。在 Intel 64 或 AMD64 (x86_64)或 IBM Z (s390x)构架上:
# boom profile create --from-host --os-options "root=%{root_device} ro %{root_opts} rhgb quiet crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M" Created profile with os_id 43747d3: OS ID: "43747d3888b663d2bc88efd35d0813159a84d291", Name: "Red Hat Enterprise Linux", Short name: "rhel", Version: "8.9 (Ootpa)", Version ID: "8.9", Kernel pattern: "/vmlinuz-%{version}", Initramfs pattern: "/initramfs-%{version}.img", Root options (LVM2): "rd.lvm.lv=%{lvm_root_lv}", Root options (BTRFS): "rootflags=%{btrfs_subvolume}", Options: "root=%{root_device} ro %{root_opts} rhgb quiet crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M", Title: "%{os_name} %{os_version_id} (%{version})", Optional keys: "", UTS release pattern: "el8"
在 64 位 ARM (AArch64)构架上:
# boom profile create --from-host --os-options "root=%{root_device} ro %{root_opts} rhgb quiet crashkernel=1G-4G:256M,4G-64G:320M,64G-:576M"
在 IBM POWER little-endian (ppc64le)构架上:
# boom profile create --from-host --os-options "root=%{root_device} ro %{root_opts} rhgb quiet crashkernel=2G-4G:384M,4G-16G:512M,16G-64G:1G,64G-128G:2G,128G-:4G" --optional-keys "grub_users grub_arg grub_class id"
ppc64le 上需要
-optional-keys
参数,以确保grub2-mkconfig
命令在第 10.2.3 步中生成正确的引导条目。如需更多信息,请参阅 RHEL-36180。
使用原始引导镜像的备份副本创建原始系统的快照引导条目:
# boom create --backup --title "Root LV snapshot before changes" --rootlv rhel/root_snapshot_before_changes WARNING - Boom grub2 integration is disabled in '/boot/../etc/default/boom' Created entry with boot_id c919f89: title Root LV snapshot before changes machine-id b1dcec73886b45218892b1a7bbfa0dee version 4.18.0-513.24.1.el8_9.x86_64 linux /vmlinuz-4.18.0-513.24.1.el8_9.x86_64.boom0 initrd /initramfs-4.18.0-513.24.1.el8_9.x86_64.img.boom0 options root=/dev/rhel/root_snapshot_before_changes ro rd.lvm.lv=rhel/root_snapshot_before_changes rhgb quiet crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M
在这里:
-
--title "Root LV snapshot before changes"
是引导条目的名称,它在系统启动期间在引导条目列表中显示。 --rootlv
是与新引导条目对应的根逻辑卷。完成上一步后,您有一个引导条目,允许在升级前访问原始系统。
忽略 "WARNING - Boom grub2 integration is disabled in '/boot/../etc/default/boom'"。详情请查看 RHEL-35983。
在 ppc64le 架构的系统上,更新引导条目:
# grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Generating boot entries from BLS files... done
-
使用 Leapp 升级到 Red Hat Enterprise Linux 9:
# leapp upgrade ==> Processing phase `configuration_phase` ====> * ipu_workflow_config IPU workflow config actor ==> Processing phase `FactsCollection` ... ============================================================ REPORT OVERVIEW ============================================================ Upgrade has been inhibited due to the following problems: 1. Firewalld Configuration AllowZoneDrifting Is Unsupported 2. Possible problems with remote login using root account HIGH and MEDIUM severity reports: 1. Remote root logins globally allowed using password 2. GRUB2 core will be automatically updated during the upgrade Reports summary: Errors: 0 Inhibitors: 2 HIGH severity reports: 2 MEDIUM severity reports: 0 LOW severity reports: 1 INFO severity reports: 3 Before continuing consult the full report: A report has been generated at /var/log/leapp/leapp-report.json A report has been generated at /var/log/leapp/leapp-report.txt ============================================================ END OF REPORT OVERVIEW ============================================================
检查并解决
leapp upgrade
命令报告所指示的任何阻碍。有关报告的详细说明,请参阅 检查预升级报告。重启到升级引导条目:
# leapp upgrade --reboot ==> Processing phase `configuration_phase` ====> * ipu_workflow_config IPU workflow config actor ==> Processing phase `FactsCollection` ...
从 GRUB 引导屏幕中选择 Red Hat Enterprise Linux Upgrade Initramfs 条目。
注意Red Hat Enterprise Linux 9 不提供 GRUB 引导屏幕中的 Snapshots 子菜单。
验证
- 完成升级后,系统会自动重启。GRUB 屏幕显示升级的(Red Hat Enterprise Linux 9)和之前可用的操作系统版本。升级的系统版本是默认选择。
其他资源
-
boom (1)
系统中的 man page - 什么是 BOOM 以及如何安装它?(红帽知识库)
- 如何创建 BOOM 引导条目 (红帽知识库)