GRUB 引导配置没有默认选择新内核,或者 GRUB 默认启动项设置不正确
解决方法如下:
一、确认默认启动的内核
执行以下命令查看所有可用的内核:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
示例输出:
0 : CentOS Linux (6.1.2-1.el7.elrepo.x86_64) 7 (Core) 1 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
上面是引导菜单顺序,编号从 0 开始。
二、设置默认启动内核(例如选择第0项)
执行命令:
sudo grub2-set-default 0
然后更新 GRUB 配置:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
如果是 UEFI 启动的机器(大部分新机器是),需要改为:
sudo grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
三、重启测试
sudo reboot
系统应该自动选择你设置的那个内核进入了,不再要求手动选。
附加建议(可选)
查看当前默认内核:
bash复制编辑grub2-editenv list
查看当前实际使用的内核:
uname -r
如果你不确定是 BIOS 启动还是 UEFI,可以运行:
ls /sys/firmware/efi
有内容:说明是 UEFI。
没有该目录:说明是传统 BIOS。