【修改对象】
修改文件:/etc/default/grub
root@muzhi-virtual-machine:~/linux-driver# cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
...
....
主要修改GRUB_DEFAULT参数指定启动内核,指定的内容为grub菜单的条目描述
【获取启动内核的菜单描述方法】
首先查看当前grub的菜单配置 cat /boot/grub/grub.cfg
可以看到
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68' {
menuentry 'Ubuntu, with Linux 5.15.0-43-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-43-generic-advanced-f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68
else
search --no-floppy --fs-uuid --set=root f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68
fi
echo 'Loading Linux 5.15.0-43-generic ...'
linux /boot/vmlinuz-5.15.0-43-generic root=UUID=f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68 ro find_preseed=/preseed.cfg auto noprompt priority=critical locale=en_US quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.15.0-43-generic
}
menuentry 'Ubuntu, with Linux 5.15.0-43-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.0-43-generic-recovery-f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68' {
recordfail
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt3'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68
else
search --no-floppy --fs-uuid --set=root f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68
fi
echo 'Loading Linux 5.15.0-43-generic ...'
linux /boot/vmlinuz-5.15.0-43-generic root=UUID=f7d2dd2f-7a46-4b9f-bc25-a513afc1ac68 ro recovery nomodeset dis_ucode_ldr find_preseed=/preseed.cfg auto noprompt priority=critical locale=en_US
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-5.15.0-43-generic
}
}
结合以上当前grub的菜单,得到如果默认启动5.15.0-43内核则grub的配置GRUB_DEFAULT参数应该指定为:
Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-43-generic
【修改】
GRUB_DEFAULT=“Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-43-generic”
【生效】
注意这里/etc/default/grub是系统给出的grub参数配置,但配置后是无法直接生效的,需要通过update-grub命令去生效,然后重启,完了就OK。