背景 链接到标题 最近在将一个节点的 kernel 从 4.18 版本降级到 4.14 后,发现系统无法启动,直接进入到了 GRUB 提示符界面,记录下修复过程。
现象 链接到标题 因为 kernel 4.18 版本和 4.14 的 打包方式发生了比较大的变化,4.18 版本多出了 kernel-core 和 kernel-modules 两个 rpm:
4.14
[root@sh-workstation Packages]# ls |grep ^kernel kernel-4.14.0-115.el7a.0.1.aarch64.rpm kernel-headers-4.14.0-115.el7a.0.1.aarch64.rpm kernel-tools-4.14.0-115.el7a.0.1.aarch64.rpm kernel-tools-libs-4.14.0-115.el7a.0.1.aarch64.rpm 4.18
kernel-4.18.0-147.8.1.el7.aarch64.rpm kernel-core-4.18.0-147.8.1.el7.aarch64.rpm kernel-modules-4.18.0-147.8.1.el7.aarch64.rpm kernel-tools-4.18.0-147.8.1.el7.aarch64.rpm kernel-tools-libs-4.18.0-147.8.1.el7.aarch64.rpm 在没有官方 yum repo 的情况下,降级就比较麻烦,我直接尝试 rpm -Uvh kernel-4.14*.rpm ,然后将 4.18 的 kernel-core 和 kernel-modules 卸载掉,然后重启后,发现系统直接进入到了 GRUB 提示符界面,无法正常启动,只能寻求修复办法。
修复方式 链接到标题 当时系统启动后,显示的是 grub> 提示符,说明此时已经加载了 grub 程序,但是没有找到 grub.cfg 配置文件中的指定kernel 和 initramfs。