0 前言
当系统中安装了多个Linux内核的时候,我们希望在开机的时候可以进入grub选择菜单来选择启动特定版本的内核。
1 快捷键
不同电脑有不同的进入grub2按键:
Linux发行版 | 按键 | |
Ubuntu | 14.04 | Shift |
18.04 | Esc[3] | |
UOS | pro 20 |
2 超时
grub默认配置文件为“/etc/default/grub”,修改如下:
(1)Ubuntu14.04
(2)Ubuntu22.04
可通过下面命令查看个选项的说明:
info -f grub -n 'Simple configuration'
(3)更新grub
执行下面的命令更新grub设置并重启即可:
Ubuntu
sudo update-grub # 解析上述/etc/default/grub、/etc/default/grub.d/init-select.cfg并写入/boot/grub/grub.cfg
sudo reboot
CentOS
grub2-mkconfig -o /boot/grub2/grub.cfg # [3]
3 默认内核
(1)查看当前内核列表[2]
cat /boot/grub/grub.cfg | egrep "submenu|menuentry"
Ubuntu22.04结果如下:
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-f59a74b3-f184-4ab7-869f-896f26537803' {
menuentry 'Ubuntu, with Linux 5.19.0-38-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.19.0-38-generic-advanced-f59a74b3-f184-4ab7-869f-896f26537803' {
menuentry 'Ubuntu, with Linux 5.19.0-38-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.19.0-38-generic-recovery-f59a74b3-f184-4ab7-869f-896f26537803' {
menuentry 'Ubuntu, with Linux 5.19.0-35-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.19.0-35-generic-advanced-f59a74b3-f184-4ab7-869f-896f26537803' {
menuentry 'Ubuntu, with Linux 5.19.0-35-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.19.0-35-generic-recovery-f59a74b3-f184-4ab7-869f-896f26537803' {
(2)选择默认内核[2]
-GRUB_DEFAULT=0
+GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.19.0-35-generic"
# @file: /etc/default/grub
注:有两部分内容组成,由“>”隔开!
(3)更新重启
sudo update-grub
sudo reboot
注:在UOS Pro 20版本上验证上述方法可行!