重新排序 GRUB 以在顶部列出 Windows

sun*_*phu 7 linux grub dual-boot boot-loader windows

我安装了win 7linux mint 14。是否可以将 修改GRUB Menu为显示Windows为第一个选项,而不是Linux目前所做的。主要是为了在启动时默认启动 Windows

Ant*_*hon 7

如果你的启动菜单的顺序很重要(不仅仅是 Windows 默认启动),并且除了 Linux Mint 和 Windows(如 OSX、BSD)之外你没有任何可启动的东西,你可以这样做:

cd /etc/grub.d
mv 30_os-prober 09_os-prober
Run Code Online (Sandbox Code Playgroud)

作为 中文件的字母顺序/etc/grub.d,决定了它们的处理顺序。然后运行sudo update-grub¹ 以生成/boot/grub/grub.cfg文件,该文件确定菜单顺序。

如果您只想让 Windows 启动,您还可以更改/etc/default/grub和更改条目

GRUB_DEFAULT=0
Run Code Online (Sandbox Code Playgroud)

GRUB_DEFAULT=4
Run Code Online (Sandbox Code Playgroud)

并运行sudo update-grub4是在0for Mint之后的 Windows 正常条目,1对于旧版本 Mint 的子菜单,2formemcheck3for memcheckvia a serial interface。您的设置可能略有不同,但您可以在 grub 菜单中数数(从 0 开始),或者如果您的猜测关闭,则尝试更改。²

您可能需要考虑第三种选择,而我自己更喜欢这种选择。这是为了更改您的设置/etc/default/grub,如果您不手动选择不同的菜单项,它会自动启动您上次选择的系统。为此,您更改了线路

GRUB_DEFAULT=0
Run Code Online (Sandbox Code Playgroud)

进入

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
Run Code Online (Sandbox Code Playgroud)

并运行 sudo update-grub

¹我往往会忘记update-grub经常尝试的命令的名称,grub-TAB并希望由此产生的扩展向我展示了grub-something我需要运行的命令。直到我意识到它说在/etc/default/grub我正在编辑的文件顶部做什么 。当然,一旦我发现如何查找命令名称,我就永远不会忘记......
²正如@derobert 所指出的,您还可以使用与您要选择的菜单项匹配的字符串。是我找到的有关该功能的唯一文档。