我在Gentoo Linux系统上运行GRUB 2.00。
我手动编译自己的内核,然后我在安装它们/boot
用make install
。我目前有以下内核/boot
:
# ls -1 /boot/vmlinuz*
/boot/vmlinuz-3.7.4-gentoo-5
/boot/vmlinuz-3.7.4-gentoo-first
/boot/vmlinuz-3.7.4-gentoo-fourth
/boot/vmlinuz-3.7.4-gentoo-third
运行grub2-mkconfig
结果如下:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.7.4-gentoo-third
Found linux image: /boot/vmlinuz-3.7.4-gentoo-fourth
Found linux image: /boot/vmlinuz-3.7.4-gentoo-first
Found linux image: /boot/vmlinuz-3.7.4-gentoo-5
done
如果现在阅读生成的/boot/grub2/grub.cfg
文件,则会注意到已创建以下条目:
- 一个主要的默认条目开始
vmlinuz-3.7.4-gentoo-third
- 包含所有其他条目(包括恢复条目)的子菜单,其顺序与
grub2-mkconfig
命令相同
问题是在引导时,我想默认加载内核的第五个修订版(vmlinuz-3.7.4-gentoo-5
),而不是第三个修订版(vmlinuz-3.7.4-gentoo-third
)。我也不想访问子菜单来选择要加载的正确内核。
我该如何改变这种行为?如何告诉GRUB我默认要运行内核的第五版本而不是旧的第三版本?通常,如何更改默认输入行以匹配所需的内核,而不是GRUB选择的看似随机的行?
我还尝试将以下行放入/etc/default/grub
:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
这并不能解决我所希望的问题。但是至少GRUB似乎记得我从中启动的最新内核,并从子菜单中自动选择了它。只是我不喜欢访问子菜单。
-o /boot/grub2/grub.cfg
为输出文件。该目录/boot/grub/
仍然存在吗?