第 7 章 在 RHEL 10 系统中执行升级后的任务
原位升级后,通过删除不需要的软件包、禁用不兼容的软件仓库并更新救援内核和初始 RAM 磁盘来清理 RHEL 10 系统。
7.1. 执行升级后的任务 复制链接链接已复制到粘贴板!
执行升级到 RHEL 10 后,完成以下推荐的主要任务。
流程
从
/etc/dnf/dnf.conf
配置文件中的 exclude 列表中删除剩余的Leapp
软件包,其中包括snactor
软件包,这是升级扩展开发的工具。在原位升级过程中,使用Leapp
工具安装的Leapp
软件包会自动添加到 排除列表中,以防止删除或更新重要的文件。在原位升级后,在从系统中删除Leapp
软件包之前,必须将它们从排除列表中删除。-
要从 exclude 列表中手动删除软件包,请编辑
/etc/dnf/dnf.conf
配置文件并从 exclude 列表中删除所需的Leapp
软件包。 从 exclude 列表中删除所有软件包:
dnf config-manager --save --setopt exclude=''
# dnf config-manager --save --setopt exclude=''
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
要从 exclude 列表中手动删除软件包,请编辑
删除剩余的 RHEL 9 软件包,包括剩余的
Leapp
软件包。找到剩余的 RHEL 9 软件包:
rpm -qa | grep -e '\.el[789]' | grep -vE '^(gpg-pubkey|libmodulemd|katello-ca-consumer)' | sort
# rpm -qa | grep -e '\.el[789]' | grep -vE '^(gpg-pubkey|libmodulemd|katello-ca-consumer)' | sort
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从 RHEL 10 系统中删除剩余的 RHEL 9 软件包。要确保保留 RPM 依赖项,请在执行此操作时使用
DNF
。在接受之前检查交易,以确保没有任何软件包被意外删除。例如:
dnf remove $(rpm -qa | grep \.el[789] | grep -vE 'gpg-pubkey|libmodulemd|katello-ca-consumer')
# dnf remove $(rpm -qa | grep \.el[789] | grep -vE 'gpg-pubkey|libmodulemd|katello-ca-consumer')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除剩余的
Leapp
依赖软件包:dnf remove leapp-deps-el10 leapp-repository-deps-el10
# dnf remove leapp-deps-el10 leapp-repository-deps-el10
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
可选:从系统中删除所有剩余的与升级相关的数据:
rm -rf /var/log/leapp /root/tmp_leapp_py3 /var/lib/leapp
# rm -rf /var/log/leapp /root/tmp_leapp_py3 /var/lib/leapp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要删除这些数据可能会限制红帽支持调查并故障排除升级后问题的能力。
禁用其软件包与 RHEL 10 不兼容的 DNF 软件仓库。由 RHSM 管理的存储库被自动处理。禁用这些存储库:
dnf config-manager --set-disabled <repository_id>
# dnf config-manager --set-disabled <repository_id>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用存储库 ID 替换 repository_id。
将旧的救援内核和初始 RAM 磁盘替换为当前的内核和磁盘:
删除现有救援内核和初始 RAM 磁盘:
rm /boot/vmlinuz-*rescue* /boot/initramfs-*rescue*
# rm /boot/vmlinuz-*rescue* /boot/initramfs-*rescue*
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新安装救援内核和相关的初始 RAM 磁盘:
/usr/lib/kernel/install.d/51-dracut-rescue.install add "$(uname -r)" /boot "/boot/vmlinuz-$(uname -r)"
# /usr/lib/kernel/install.d/51-dracut-rescue.install add "$(uname -r)" /boot "/boot/vmlinuz-$(uname -r)"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您的系统在 IBM Z 构架上,请更新
zipl
引导装载程序:zipl
# zipl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
.可选:检查现有的配置文件:
-
检查、修复,然后删除
rpmnew
、rpmsave
和leappsave
文件。请注意,rpmsave
和leappsave
是等效的,可以用类似的方式处理。如需更多信息,请参阅 什么是 rpmnew 和 rpmsave 文件? -
从
/etc/dnf/modules.d/
目录中删除不再有效 RHEL 9 DNF 模块的配置文件。请注意,当相关的 DNF 模块不存在时,这些文件对系统没有影响。
-
检查、修复,然后删除
- 重新检查并重新应用您的安全策略。特别是,需要将 SELinux 模式改为 enforcing。详情请参阅 应用安全策略。
验证
验证之前删除的救援内核和救援初始 RAM 磁盘文件是否已为当前内核创建:
ls /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* lsinitrd /boot/initramfs-*rescue*.img | grep -qm1 "$(uname -r)/kernel/" && echo "OK" || echo "FAIL"
# ls /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* # lsinitrd /boot/initramfs-*rescue*.img | grep -qm1 "$(uname -r)/kernel/" && echo "OK" || echo "FAIL"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证救援引导条目是否指向现有救援文件。请查看 grubby 输出:
grubby --info /boot/vmlinuz-*rescue*
# grubby --info /boot/vmlinuz-*rescue*
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看 grubby 输出,并验证没有配置 RHEL 9 引导条目:
grubby --info ALL
# grubby --info ALL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证 /boot/loader/entries 文件中没有与之前的 RHEL 相关的文件:
grep -r ".el9" "/boot/loader/entries/" || echo "Everything seems ok."
# grep -r ".el9" "/boot/loader/entries/" || echo "Everything seems ok."
Copy to Clipboard Copied! Toggle word wrap Toggle overflow