使GRUB2使用“默认保存”功能吗?


8

我刚刚安装了Moblin操作系统。它正在使用GRUB2。在我的Ubuntu 8.04上,正在使用GRUB 0.97,在其中我舒适地使用了默认的保存选项。我发现使用GRUB2时,我不应该直接编辑/boot/grub/menu.lst,但是我做了 :),因为我的Moblin不包含任何/ etc / default / grub,他们说我应该做我想要的修改。

因此,我所做的如下操作无效:

default=saved
timeout=1
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault=1

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault=0

这样,我应该在每次启动时自动在Moblin和Window之间切换,但是它不起作用。

互联网上几乎所有的疑难解答者都在说我应该在/ etc / default / grub中启用DEFAULT = save选项,但是我找不到此文件。知道我该怎么办?

非常感谢

更新:

我使用等于符号,因为默认情况下,我的menu.lst的条目为default = 0。但是,默认值0也可以正常工作。

而且,我拥有的menu.lst实际上是指向./grub.conf的符号链接。我还注意到grub-intallgrub-set-default命令不起作用。


您正在使用基于0的磁盘分区编号-看起来不像GRUB2,看起来像Legacy GRUB。
短暂

如果您的/boot/grub/menu.lst工作正常,则说明您使用Grub2。Grub2使用/boot/grub/grub.cfg。如果您已从使用Grub1的较旧安装更新到Grub2,则可能会看到两个配置文件。
quack quixote 2010年

Answers:


19

savedefault/etc/default/grub(GRUB 2)中启用的正确语法如下:

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

不是DEFAULT=save询问者建议的行。

将以上两行添加到后/etc/default/grub,必须以超级用户身份使用以下命令来更新GRUB的配置:

grub-mkconfig
update-grub

至少在Lubuntu 12.10上grub-mkconfig是不需要的(因为它没有选项就将配置文件转储到stdout)。唯一需要的命令是update-grub实际grub-mkconfig使用适当-o file选项调用的命令。


一个细节是,至少在Ubuntu上,如果您决定尝试快速测试该功能,将不会保存memtest条目...
Pricey

1

我不确定GRUB是否允许该=标志;我的配置显示为default saved

您的问题是该Pathetic Windows条目不执行savedefault,因此默认条目永远不会更改为Windows。

编辑:此外,savedefault默认情况下保存当前条目;只有给它一个数字,它才会保存当前条目以外的另一个条目。

尝试这个:

default saved
timeout 1
#splashimage (hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault

我不了解Moblin,但在其他发行版中,通常将配置文件放置在/boot/grub而不是/etc


我会先放savedefault命令,因为这是我不清楚阉链式加载或内核调用立即退出引导加载程序..

我使用等于符号,因为默认情况下,我的menu.lst的条目为default = 0。但是,默认值为0,也可以正常工作。此外,我拥有的menu.lst实际上是指向./grub.conf的符号链接。我还检查了grub-intall和grub-set-default命令是否起作用。

另请参阅我的编辑。你不应该给出savedefault数字。

语法savedefault N不是savedefault=N(再次,如果您希望它将另一个条目保存为默认条目,如果您希望当前条目,则保留它N)。
quack quixote 2010年

+1 cuz它对我
有用
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.