¿Hacer que "guardado por defecto" funcione con GRUB2 ...?

8

Acabo de instalar el sistema operativo Moblin. Está usando GRUB2. En mi Ubuntu 8.04 se estaba utilizando GRUB 0.97 en el que estaba usando la opción guardada por defecto cómodamente. Descubrí que con GRUB2 no debería editar /boot/grub/menu.lst directamente, pero lo hice :) porque mi Moblin no contiene ningún / etc / default / grub donde dicen que debería hacer la modificación que quiero.

Entonces, lo que hice es lo siguiente, que no funcionó:

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

Al hacerlo, debería haber cambiado automáticamente entre Moblin y Window en cada arranque, pero no funciona.

Casi todos los solucionadores de problemas en Internet dicen que debo habilitar la opción DEFAULT = save en / etc / default / grub pero no puedo encontrar este archivo. ¿Alguna idea de qué más debo hacer?

Muchas gracias

Actualizar:

Usé el signo igual porque, por defecto, mi menu.lst tenía una entrada por defecto = 0 . Sin embargo, el valor predeterminado 0 también funciona bien.

Además, el menu.lst que tengo es en realidad un enlace simbólico a ./grub.conf . También he notado que los comandos grub-intall y grub-set-default no funcionan.

Usman
fuente
Está utilizando numeración basada en 0 para particiones de disco, que no se parece a GRUB2, se parece a Legacy GRUB.
efímero
si usted tiene un trabajo /boot/grub/menu.lst que está no está usando el Grub2. Grub2 usa /boot/grub/grub.cfg . puede ver ambos archivos de configuración si ha actualizado a Grub2 desde una instalación anterior que usaba Grub1.
quack quijote

Respuestas:

19

La sintaxis correcta para habilitar savedefaulten /etc/default/grub(GRUB 2) es con las líneas:

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

y no con la línea DEFAULT=saveque sugirió el investigador.

Después de agregar las dos líneas anteriores a /etc/default/grub, uno tiene que actualizar la configuración de GRUB, como superusuario, con los siguientes comandos:

grub-mkconfig
update-grub

Al menos en Lubuntu 12.10, grub-mkconfigno es necesario (ya que, sin opciones, volca el archivo de configuración en stdout). El único comando necesario es el update-grubque realmente invoca grub-mkconfigcon la -o fileopción adecuada .

edin1
fuente
Un detalle es que al menos en Ubuntu, las entradas de memtest no se guardarán en caso de que decida probarlas para probar la función rápidamente ...
Caro el
1

No estoy seguro si GRUB permite la =señal; mi configuración lee default saved.

Su problema es que la Pathetic Windowsentrada no hace una savedefault, por lo que la entrada predeterminada nunca cambia a Windows.

Editar : Además, savedefaultpor defecto guarda la entrada actual; solo si le asigna un número, guardará otra entrada que no sea la actual.

Prueba esto:

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

No conozco a Moblin, pero en otras distribuciones es común tener el archivo de configuración en algún lugar /boot/grub, no en /etc.

Thomas
fuente
Me puse el comando savedefault primero, ya que es claro para mí wether chainloader o kernel llamadas salen del cargador de arranque inmediato ..
Uso el signo igual porque por defecto mi menu.lst tenía una entrada como predeterminada = 0. Sin embargo, el valor predeterminado 0 también funciona bien. Además, el menu.lst que tengo es en realidad un enlace simbólico a ./grub.conf También he comprobado que los comandos grub-intall y grub-set-default no funcionan.
Ver también mi edición. No deberías dar savedefaultun número.
la sintaxis savedefault Nno es savedefault=N(de nuevo, si desea guardar otra entrada como predeterminada, si desea la entrada actual, no la use N).
quack quijote
+1 porque funcionó para mí (aunque el OP preguntó por grub2)
nhed