Cambiar el tiempo y SO en Grub: Ubuntu 9.1

Copiado y pegado para futura ayuda y referencia.




Bueno, eso es posible cambiando el tiempo que el grub "se mostrará" y también el sistema operativo seleccionado por defecto.
Lo puedes hacer de esta manera:
(Antes que nada, crea un respaldo del archivo grub.cfg haciendo un sudo cp /boot/grub/grub.cfg /boot/grub/grub_bckp.cfg)
1.- Editas el archivo grub.cfg, que es el encargado de mostrar la lista de sistemas operativos al inicio, de esta manera:
sudo pico /boot/grub/grub.cfg
NOTA: Tendrás que hacerlo en terminal, utilizando gedit no permite guardar el archivo.
2.- Encontrarás una buena cantidad de líneas de código, pero a ti solo te servirán un par de ellas. Verás algo como esto:
### BEGIN /etc/grub.d/00_header ###
if [ -s /boot/grub/grubenv ]; then
  have_grubenv=true
  load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
  saved_entry=${prev_saved_entry}
  save_env saved_entry
  prev_saved_entry=
  save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 9aa1c56e-f513-4fbc-a76a-7ca96eff316d
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=10
Y si te fijas, existen 2 instrucciones que te van a servir:
set default="0" Esta línea establece el sistema operativo seleccionado por defecto
set timeout=10 Indica el tiempo máximo que se mostrará el grub antes de iniciar el sistema operativo por defecto.
En tu caso deberás saber cual es la entrada de Windows 7, ¿cómo lo sabrás?, solo cuenta el lugar que ocupa Windows 7 en el grub menos 1 y ese es el número de entrada de Windows 7, por ejemplo, si tu grub es algo como esto:
Ubuntu, Linux 2.6.31-14-generic
Ubuntu, Linux 2.6.31-14-generic (recovery mode)
Memory test (memtest86+)
Memory test (memtest86+, serial console 115200)
Windows 7 (loader) (on /dev/sda1)
Entonces la entrada de Windows 7 sería 4, ya que ocupa la 5ª posición en el grub, pero tenemos que restarle 1, debido a que en el grub los sistemas se empiezan a enumerar desde 0.
Entonces tu solo dejarías tu grub.cfg de esta manera (Solo modifica lo que viene en negrita, lo demás no lo modifiques):
### BEGIN /etc/grub.d/00_header ###
if [ -s /boot/grub/grubenv ]; then
  have_grubenv=true
  load_env
fi
set default="4"
if [ ${prev_saved_entry} ]; then
  saved_entry=${prev_saved_entry}
  save_env saved_entry
  prev_saved_entry=
  save_env prev_saved_entry
fi
insmod ext2
set root=(hd0,7)
search --no-floppy --fs-uuid --set 9aa1c56e-f513-4fbc-a76a-7ca96eff316d
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=5
Repito, la entrada para Windows 7 depende de la posición que ocupe en tu grub, puede ser que sea el mismo que te mostré mas arriba.
3.- Guardas el archivo presionando las teclas CONTROL O (Es una letra 'o' y no el número cero) y finalmente cierras este editor con CONTROL X.
4.- Reinicias el equipo y de ahora en adelante el sistema operativo con a iniciar por defecto será Windows 7.
NOTA 2:
Si te fijas bien en la línea set timeout=5 no dejé el tiempo a 0 (cero) ya que, he leído, que no es posible "entrar al grub2" con la tecla ESC, entonces, mejor damos 5 segundos que se muestre antes de iniciar Windows 7 por defecto. Puedes dejarlo a un menor tiempo, por ejemplo 3 segundos, antes de iniciar, pero no lo dejes en 0 (cero) o te costará trabajo volver a ingresar en Ubuntu.
Espero que esto te sirva...
Del amigo  catrip


0 comentarios: