在互联网上我只发现了这个:
/etc/kernel/postinst.d/51-dracut-rescue-postinst.sh $(uname -r) /boot/vmlinuz-$(uname -r)
但它在 Fedora 36 和即将发布的 37 版本中不起作用,因为这个文件丢失了,实际上整个/etc/kernel/postinst.d/
目录都是空的。
我也发现
dnf reinstall kernel-core
但它只适用于最新的内核。我正在运行存储库中不再可用的内核。此外,这本身并不是一个好的选择,因为它会导致无缘无故地重新安装数百个文件。
grep -r rescue /etc
一无所获。
# grep -r rescue /usr/bin
grep: /usr/bin/tdbdump: binary file matches
grep: /usr/bin/ctags: binary file matches
grep: /usr/bin/systemctl: binary file matches
grep: /usr/bin/systemd-analyze: binary file matches
grep: /usr/bin/efisecdb: binary file matches
grep: /usr/bin/dpkg: binary file matches
grep: /usr/bin/grub2-mkrescue: binary file matches
/usr/share
包含大量匹配项,但我不知道如何使用它。
kernel-core
并且kernel-modules
包有 RPM 脚本可以做一些事情,但没有什么特定于“救援”的。看起来这一切都是作为一个单一的操作完成的,但我不想重新生成 initrd。
救援内核使用通用的 initramfs,因此您必须重新生成它。(比较您的 initramfses 的大小以查看其影响。)
要使用当前运行的内核创建一个新的救援内核,在 Fedora 36 上,运行