Hola que tal.
Durante el trabajo de verano científico tuve la oportunidad de ayudar al encargado de los centros de computo de la Facultad.
La opción que deseaban era poder manipular el gestor de arranque de Ubuntu, que en este caso es Grub; para cambiar el sistema operativo de arranque por defecto, el tiempo de espera para iniciar el sistema y también poder eliminar las opciones de recuperación de los kernel instalados.
Antes de modificar un archivo importante del sistema siempre me gusta hacer un respaldo del mismo por si las cosas salen mal. Por lo cual será lo primero que haremos de la siguiente forma.:
#sudo cp /boot/grub/grub.cfg /boot/grub/grubOLD.cfg
Teniendo listo el respaldo, ahora toca modificar el archivo original con la siguiente instrucción:
#sudo nano /boot/grub/grub.cfg
Una vez abierto el archivo con el editor nano veremos una buena cantidad de líneas de código, pero como solo queremos editar el tiempo de espera y el sistema operativo por default , entonces solo nos servirá lo siguiente:
### 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
Las dos instrucciones que nos servirán son las siguientes:
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.
Ahora si tenemos instalado Windows, en mi ejemplo Windows 7, para saber tu posición en el grub 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:
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 dejaríamos el grub.cfg de esta manera (Nota modificar lo que viene en negrita):
### 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
NOTA:
Recordar que para este ejemplo pusimos por default a Windows 7 y ocupaba la posición 4 y se cambió el tiempo de espera para el arranque a 5 segundos. Por lo tanto estos valores pueden cambiar dependiente de cada sistema.
Finalmente guardamos el archivo oprimiendo la tecla F2.
Reiniciamos el equipo y veremos los cambios realizamos si todo salio a la perfección.
NOTA 2:
La línea set timeout=5 no esta completamente a 0 (cero) ya que así nos evitamos problemas al querer usar el grub y seleccionar otros sistemas operativos para arrancar.
Espero les sea de utilidad.
Gracias por sus visitas y comentarios.