Indice de contenidos de esta página

Consejos para iniciar el equipo con más de una distribución
Cómo prepararse para instalar dos o más sistemas operativos
El grub en otras distribuciones
Añadir un disco duro a nuestro equipo
Cómo recuperar el grub
Fedora 16 y grub2
Cómo editar grub2 en fedora 16 o versiones superiores
Cómo cambiar el orden de los sistemas operativos listados en el grub
Cómo actualizar el grub

Iniciar el equipo con más de una distribución

Algunos tenemos dos sistemas operativos instalados en nuestros equipos, otros más. Algunos tenemos un disco duro en nuestros equipos, otros más. Una vez que le tomamos el gusto al mundo GNU/Linux, todos, inevitablemente, vamos a empezar a probar otras distribuciones. Cada vez que prendemos nuestro equipo, lo primero que vemos es una pantalla en donde aparece una cuenta regresiva de cinco segundos, la cual podemos interrumpir presionando cualquier tecla. En seguida se nos despliega una lista que nos indica cuántos y cuáles son los sistemas operativos que tenemos instalados, de modo de poder elegir uno de ellos para iniciar nuestro equipo. Esto es gracias al grub.

Llegado este punto, es conveniente tener en cuenta que 1) la mayoría de las distribuciones tienen por defecto configurado el grub para que a la hora del arranque podamos elegir sólo entre dos sistemas operativos, y tanto la cantidad como el orden de arranque de esos sistemas podremos modificarlo a gusto y piaccere editando el archivo /boot/grub/grub.conf (o el archivo /boot/grub2/grub.cfg, a partir de f16). 2) Si tenemos más de un sistema operativo instalado (y pensamos seguir instalando sistemas), es fundamental que tengamos preparada una partición independiente que aloje sólo al punto de montaje /boot. 3) Cuantos más sistemas operativos queramos tener la posibilidad de utilizar, mayor va a tener que ser el tamaño de la partición donde alojemos a /boot, ya que en ella se van a ir guardando los distintos archivos que hacen “arrancar” a cada sistema operativo. En este último aspecto, un sano cálculo es destinarle a esta partición 100 MB de espacio por cada sistema operativo instalado. 4) Cada vez que hagamos una nueva instalación, tenemos que decirle al instalador que utilice la partición /boot existente, pero que no la formatee. Formatear = borrar, y la idea es mantener intactos los datos que existan en ella. Si formateamos nuestra partición /boot, todos los datos de arranque del sistema operativo existente anterior se pierden, y solo vamos a poder utilizar la distribución que estemos instalando en ese momento.

Qué hacer con el grub antes de instalar otro sistema operativo

Presuponemos en estos momentos que todos tenemos instalado fedora y windows, que una de nuestras particiones (primaria o extendida) está dedicada exclusivamente a /boot, que tenemos particiones libres en nuestro/s disco/s, y ahora queremos agregarle, por ejemplo, un debian.

Si al prender nuestro equipo queremos tener la posibilidad de elegir entre hacerlo con fedora, o con debian, o con windows, antes de instalar nada tenemos que copiar nuestro archivo grub.conf puesto que corregir este archivo es lo que nos va a permitir elegir el sistema con el que querramos iniciar nuestra máquina. Si estamos utilizando fedora 16 o versiones posteriores continúen leyendo el grub2 a partir de fedora 16. Sino, para abrir este archivo en un entorno Gnome de fedora 15 o versiones anteriores, como “root”:

gedit /boot/grub/grub.conf

Y enseguida observaremos algo similar a esto:

# grub.conf generated by anaconda
#Note that you do not have to rerun grub after making changes to this file
#NOTICE:  You have a /boot partition.  This means that
#all kernel and initrd paths are relative to /boot/, eg.
#root (hd0,1)
#kernel /vmlinuz-version ro root=/dev/sda3
#initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=10
splashimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.40.6-0.fc15.x86_64)
	root (hd0,1)
	kernel /vmlinuz-2.6.40.6-0.fc15.x86_64 ro root=UUID=6b76e818-cf8d-49e1-b994-d95753fb6584 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
	initrd /initramfs-2.6.40.6-0.fc15.x86_64.img

title Fedora (2.6.38.6-26.rc1.fc15.x86_64)
	root (hd0,1)
	kernel /vmlinuz-2.6.38.6-26.rc1.fc15.x86_64 ro root=UUID=6b76e818-cf8d-49e1-b994-d95753fb6584 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
	initrd /initramfs-2.6.38.6-26.rc1.fc15.x86_64.img

title windows 7
	rootnoverify (hd0,0)
	chainloader +1

Lo copiamos y lo guardamos en un pen-drive, o lo imprimimos, o lo que sea. Una vez que instalemos la nueva distribución, se va a generar un nuevo archivo grub.conf (o menu.lst, o grub.cfg, de acuerdo a la distribución que estemos instalando), el cual vamos a comparar con el que acabamos de guardar. En el caso que no se hayan registrado las rutas de booteo de todos los sistemas operativos que tenemos en nuestro/s disco/s, las vamos agregando manualmente. Guardamos los cambios, cerramos, y listo.

Otro dato que pueda llegar a servir acerca de este archivo, es que en él encontramos la línea

timeout=5

gracias a la cual podemos modificar la cantidad de segundos que tenemos para detener el arranque automático del primer sistema operativo, y poder elegir iniciar nuestro equipo con alguno de los otros instalados.

Si en cambio sólo queremos modificar el orden en que se observan los sistemas operativos instalados, o el tiempo de espera antes de lanzar alguno de ellos, podemos obtener una interfaz gráfica desde donde hacerlo: en un entorno de escritorio Gnome hacemos clic en Actividades > Otras > Gestor de arranque.

(volver al índice)

El grub en otras distribuciones

Si bien el grub es el mismo en casi todas las distribuciones, hoy en día hay dos versiones dando vueltas: grub y grub2. Ubuntu y Fedora 16, por ejemplo, ya están utilizando grub2 (y en cualquier momento se suman Arch y Gentoo), mientras que el resto, al menos por ahora, siguen utilizando grub.

Sugerimos consultar la documentación propia de la distribución que vayan a instalar para conocer qué versión de grub es el que está utilizando, pero a grandes rasgos, la ruta al archivo de configuración del grub clásico es /boot/grub/grub.conf, o /boot/grub/menu.lst. Si en cambio se utiliza grub2, la configuración es algo más complicada y dependiendo la distribución que estemos utilizando, es muy probable que haya que trabajar con dos archivos: /boot/grub/grub.cfg (o /boot/grub2/grub.cfg) y /etc/grub.d/40_custom

(volver al índice)

Añadir un disco duro a nuestro equipo

En fedora 15 o en versiones anteriores, si queremos instalar un nuevo disco en nuestro equipo, tendremos que que indicarle al grub que busque, a partir de ahora, sistemas operativos no solamente en un disco, sino en dos. Para ello, editamos el archivo (en un entorno Gnome):

gedit /boot/grub/grub.conf

Y agregamos las siguientes líneas:

map (hd0) (hd1)
map (hd1) (hd0)

a continuación del título del sistema operativo que tenemos en el nuevo disco.

¿Cómo se identifican los discos en el grub? “hd” por las iniciales de “Hard Drive” (disco duro), y el número a continuación corresponde a la cantidad de discos que tengamos, teniendo en cuenta que el número “0” indica la existencia de un disco. Si tenemos dos discos, el primero se denomina “hd0”, y el segundo “hd1”. Algo similar pasa con las particiones: a la primera partición de un disco se la identifica con el número “0”, a la segunda con el número “1”, a la tercera con en número “2” y así sucesivamente. Esto quiere decir, por ejemplo, que si tenemos un sistema en la segunda partición del primer disco, la señalamos con la sigla (hd0,1). Si en cambio tenemos un sistema en la tercer partición del segundo disco, lo señalamos con la sigla (hd1,2).

Un ejemplo. Tenemos dos discos, en la primera partición del primer disco tenemos instalado fedora, y en la primera partición del segundo disco tenemos instalado windows. Este es nuestro archivo grub.conf:

# grub.conf generated by anaconda
#Note that you do not have to rerun grub after making changes to this file
#NOTICE:  You have a /boot partition.  This means that
#all kernel and initrd paths are relative to /boot/, eg.
#root (hd0,1)
#kernel /vmlinuz-version ro root=/dev/sda3
#initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=10
splashimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
#boot=/dev/sda
default=0
timeout=10
splashimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
title fedora
	root (hd0,1) <--------
	kernel /vmlinuz-2.6.26.6-79.fc9.x86_64 ro root=/dev/VolGroup00/LogVol01 rhgb quiet
	initrd /initrd-2.6.26.6-79.fc9.x86_64.img

title Fedora (2.6.26.5-45.fc9.x86_64)
	root (hd0,1)
	kernel /vmlinuz-2.6.26.5-45.fc9.x86_64 ro root=/dev/VolGroup00/LogVol01 rhgb quiet
	initrd /initrd-2.6.26.5-45.fc9.x86_64.img
title windows
	map (hd0) (hd1) <--------
	map (hd1) (hd0) <--------
	rootnoverify (hd1,0) <--------
	chainloader +1

(volver al índice)

Como recuperar el grub

A veces, en el proceso de instalación de otras distribuciones, nos encontramos con que no podemos iniciar fedora, a pesar de tener su entrada correspondiente en el archivo de configuración del nuevo grub generado. A veces podemos iniciar fedora pero se ve mal. A veces cuando prendemos la máquina sólo aparece una palabra en la pantalla: grub.

Otras veces decidimos reinstalar windows, y cuando lo hacemos, se reescribe el MBR (Master Boot Record), y perdemos nuestro grub: A pesar que la partición donde está fedora sigue ahí, no hay forma de poder iniciarlo.

Para estos y otros problemas similares, que tienen que ver con que sabemos que fedora está instaldo en nuestro disco y no obstante no podemos utilizarlo, una posible solución es la de reinstalar el grub de fedora. Antes de hacerlo, copiamos el grub.conf, o menu.lst, o grub.cfg, o como sea que se llame el archivo que está controlando en estos momentos el grub, porque la idea es, una vez reinstalado el grub de fedora, ir añadiendo las rutas de booteo de los otros sistemas operativos. Para ello vamos a necesitar reiniciar nuestro equipo desde el disco de instalación de fedora, ya sea el CD o el DVD.

Si estamos utilizando f15 o versiones anteriores, elegimos Rescue installed system:

Si estamos utilizando fedora 16 o superiores, elegimos Troubleshooting > Rescue a Fedora System:

Vamos avanzando por las pantallas de idioma y teclado:

Le decimos “no” cuando nos pregunte si queremos la red, ya que no la vamos a necesitar.

Indicamos en dónde teníamos instalado el grub anteriormente (si no lo recordamos, se nos ofrecen opciones) y vamos aceptando todo hasta que nos ofrece abrir un shell.

Una vez ahí, seguido al # ingresamos estos dos comandos (de a uno por vez, apretando “enter” después de cada):

chroot /mnt/sysimage 
grub-install /dev/sda

Si en cambio estamos utilizando fedora 16 o posteriores, lo que tenemos que ingresar es:

chroot /mnt/sysimage 
grub2-install /dev/sda

Salimos de esta pantalla tipeando “exit” dos veces, y listo. Sacamos el disco, reiniciamos el equipo y volvemos a tener fedora funcionando perfecto. Una vez en fedora, editamos el grub.conf, menu.lst, o grub.cfg y le copiamos las rutas de booteo de los sistemas que tenemos en nuestro equipo, pero que no se encuentren en este archivo.

(volver al índice)

La utilización de grub2 a partir de fedora 16

Una de las novedades de fedora 16 es la utilización de grub2 como gestor de arranque predeterminado. La capacidad que tiene este gestor para reconocer sistemas previamente instalados es superior a la versión anterior, y debido a ello es muy probable que luego de una instalación no necesitemos modificar nada: en el menú inicial podremos observar todos nuestros sistemas operativos ya instalados sin demasiadas complicaciones (siempre y cuando obviamente tengamos una partición /boot independiente y no le hayamos dado un nuevo formato con la última instalación).

Sin embargo hay diferencias importantes. Una de ellas es que comparado con su versión anterior, la sintaxis requerida para una configuración manual es algo más compleja. Otra diferencia que hay que tener muy en cuenta es aquella relacionada con la numeración de las particiones: En grub tanto al primer disco como a la primera partición se las identifica con el número “0”. De esta manera, si tenemos un sistema operativo instalado en la primera partición del primer disco duro, la ruta en el grub la indicábamos como “hd0,0”. Pero ahora, en grub2 la notación es diferente y a pesar de seguir identificándose a los discos de la misma manera (con el número “0” para el primer disco, “1” para el segundo, etc.), a la primera partición de un disco se la identifica con el número “1”. Ahora entonces, en grub2, la notación de la ruta a un sistema operativo instalado en la primera partición del primer disco duro debe ser “hd0,1”, en la segunda partición “hd0,2”, y así sucesivamente.

La tercer gran diferencia es que llegado el caso de instalar un nuevo sistema operativo, grub2 tiene la capacidad de ser configurado de manera automática para que lo reconozca y lo agregue a su menú inicial mediante una línea de comando. Para poder hacerlo tenemos que tener instalado el paquete os-prober

yum install os-prober

Para que se autoconfigure de manera automática tenemos que ingresar lo siguiente (siempre como usuarios ‘root’ o ‘sudo’):

grub2-mkconfig -o /boot/grub2/grub.cfg

Hay que tener en cuenta, además, que una vez ejecutada esta orden se sustituyen todas las modificaciones que hayamos hecho en forma manual.

Nuestro único consejo: tomar todas las precauciones posibles antes de realizar una instalación nueva, realizar respaldos de nuestros datos importantes, visitar los foros de la comunidad, y tratar de leer la mayor cantidad de documentación que tengamos a mano.

Fuente: Página wiki de Grub2 del proyecto fedora

(volver al índice)

Cómo modificar el grub2

A partir de f16, si queremos modificar el gestor de arranque grub2, tenemos que editar los archivos /etc/default/grub y /boot/grub2/grub.cfg, siempre como usuarios ‘root’ o ‘sudo’. El primero nos permite modificar algo así como cuestiones estéticas: colocarle algún fondo, mejorar la definición, modificar el tiempo de espera antes que se inicie el primer sistema de la lista. El segundo nos permite agregar manualmente entradas que inicien sistemas operativos.

Si lo queremos modificar en forma automática, realizando una especie de actualización sobre sí mismo en busca de nuevos sistemas operativos instalados, lo hacemos mediante la orden:

grub2-mkconfig -o /boot/grub2/grub.cfg

Si en cambio queremos hacerlo en forma manual (en un entorno Gnome):

gedit /boot/grub2/grub.cfg

Y nos vamos a encontrar con algo parecido a esto:

#
#DO NOT EDIT THIS FILE
#It is automatically generated by grub2-mkconfig using templates
#from /etc/grub.d and settings from /etc/default/grub
### BEGIN /etc/grub.d/00_header ####

if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi
function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}
function load_video {
true
}
set timeout=10
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Fedora (3.1.0-0.rc10.git0.1.fc16.x86_64)' --class fedora --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	echo 'Loading Fedora (3.1.0-0.rc10.git0.1.fc16.x86_64)'
	linux	/vmlinuz-3.1.0-0.rc10.git0.1.fc16.x86_64 root=UUID=6a7914be-e03d-4b46-809d-acade298ebb2 ro rd.md=0 rd.lvm=0 rd.dm=0  KEYTABLE=la-latin1 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=es_ES.UTF-8
	echo 'Loading initial ramdisk ...'
	initrd /initramfs-3.1.0-0.rc10.git0.1.fc16.x86_64.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-0.rc6.git0.3.fc16.x86_64' --class fedora --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	echo	'Loading Linux 3.1.0-0.rc6.git0.3.fc16.x86_64 ...'
	linux	/vmlinuz-3.1.0-0.rc6.git0.3.fc16.x86_64 root=UUID=6a7914be-e03d-4b46-809d-acade298ebb2 ro rd.md=0 rd.lvm=0 rd.dm=0  KEYTABLE=la-latin1 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=es_ES.UTF-8
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-3.1.0-0.rc6.git0.3.fc16.x86_64.img
}
menuentry 'Fedora Linux, with Linux 3.1.0-0.rc6.git0.3.fc16.x86_64 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	echo	'Loading Linux 3.1.0-0.rc6.git0.3.fc16.x86_64 ...'
	linux	/vmlinuz-3.1.0-0.rc6.git0.3.fc16.x86_64 root=UUID=6a7914be-e03d-4b46-809d-acade298ebb2 ro single rd.md=0 rd.lvm=0 rd.dm=0  KEYTABLE=la-latin1 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=es_ES.UTF-8
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-3.1.0-0.rc6.git0.3.fc16.x86_64.img
}
menuentry 'Fedora Linux, with Linux 2.6.35.14-97.fc14.x86_64' --class fedora --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	echo	'Loading Linux 2.6.35.14-97.fc14.x86_64 ...'
	linux	/vmlinuz-2.6.35.14-97.fc14.x86_64 root=UUID=6a7914be-e03d-4b46-809d-acade298ebb2 ro rd.md=0 rd.lvm=0 rd.dm=0  KEYTABLE=la-latin1 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=es_ES.UTF-8
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-2.6.35.14-97.fc14.x86_64.img
}
menuentry 'Fedora Linux, with Linux 2.6.35.14-97.fc14.x86_64 (recovery mode)' --class fedora --class gnu-linux --class gnu --class os {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	echo	'Loading Linux 2.6.35.14-97.fc14.x86_64 ...'
	linux	/vmlinuz-2.6.35.14-97.fc14.x86_64 root=UUID=6a7914be-e03d-4b46-809d-acade298ebb2 ro single rd.md=0 rd.lvm=0 rd.dm=0  KEYTABLE=la-latin1 quiet SYSFONT=latarcyrheb-sun16 rhgb rd.luks=0 LANG=es_ES.UTF-8
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-2.6.35.14-97.fc14.x86_64.img
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows Vista (loader) (on /dev/sda1)" --class windows --class os {
	insmod part_msdos
	insmod ntfs
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set=root 7CD84AEED84AA66C
	chainloader +1
}
menuentry "fedora (on /dev/sda3)" --class gnu-linux --class gnu --class os {
	insmod part_msdos
	insmod ext2
	set root='(hd0,msdos2)'
	search --no-floppy --fs-uuid --set=root 08e14854-407a-45c3-be6f-e70c908eb714
	linux /vmlinuz-2.6.35.14-97.fc14.x86_64 ro root=UUID=7e24a4de-54a8-44f5-a544-4a8f93c7b99c rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=la-latin1 rhgb quiet
	initrd /initramfs-2.6.35.14-97.fc14.x86_64.img
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###

#This file provides an easy way to add custom menu entries.  Simply type the
#menu entries you want to add after this comment.  Be careful not to change
#the 'exec tail' line above.

### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###

Ahora bien, si lo que queremos es agregar un sistema operativo basado en Linux, tenemos que respetar la sintaxis de las líneas comprendidas entre los encabezados ### BEGIN /etc/grub.d/10_linux ### y ### END /etc/grub.d/10_linux ###. Si lo que nos interesa es agregar un sistema windows, tenemos que prestarle atención a la sintaxis de las líneas comprendidas entre los encabezados ### BEGIN /etc/grub.d/30_os-prober ### y ### END /etc/grub.d/30_os-prober ###.

Finalmente, si queremos que en el menú inicial se reflejen nuestras modificaciones, y aparezcan nuevas rutas de booteo hacia otros sistemas operativos que no han sido detectados por grub2, tenemos que agregar estas líneas que queremos que aparezcan entre los encabezados

### BEGIN /etc/grub.d/40_custom ###
#This file provides an easy way to add custom menu entries.  Simply type the
#menu entries you want to add after this comment.  Be careful not to change
#the 'exec tail' line above.

ioioioioioioioioioi
ioioioioioioioioioioioi
ioioioioioi

### END /etc/grub.d/40_custom ###

Si agregamos líneas de booteo en cualquier otra parte del archivo /boot/grub2/grub.cfg, estas líneas no serán observadas en el menú inicial.

Y recordemos que estas modificaciones serán sobrescritas y anuladas con cada nueva actualización del kernel, o con la ejecución del comando:

grub2-mkconfig -o /boot/grub2/grub.cfg

Fuente: Página wiki de Grub2 del proyecto fedora

Para seguir leyendo:

. Características del Grub2 en fedora (en inglés)
. Grub2 en Archlinux (en inglés)
. Grub2 en Gentoo (en inglés)
. Grub2 en Ubuntu (en inglés)
. Tutorial muy completo de Grub2 en Ubuntu (en inglés)

(volver al índice)

Cómo modificar el orden de arranque de los sistemas operativos en el grub

Por defecto el grub está configurado para que sea fedora el sistema operativo que se inicie primero. Si tenemos otros sistemas instalados en nuestro equipo y queremos utilizarlos, podemos interrumpir la cuenta regresiva presionando cualquier tecla, y luego seleccionando el sistema de nuestra preferencia en el menú que se nos ofrece.

Pero también podríamos querer evitarnos este paso y definir el grub de modo que nuestro equipo se inicie con otro sistema operativo de forma automática. Para ello tenemos que conocer cuáles son las entradas en el grub que se corresponden con qué sistema operativo instalado, y una vez conocidas modificar el archivo etc/default/grub.

Para saber cuáles son las entradas de nuestros sistemas opertaivos en el grub, como usuarios ‘root’ o ‘sudo’ ingresamos:

grep menuentry /boot/grub2/grub.cfg

Elegimos la entrada que nos interesa, y la copiamos (con las comillas incluidas). Enseguida abrimos el archivo etc/default/grub

gedit /etc/default/grub

Y en la línea GRUB_DEFAULT=xxx agregamos la entrada que copiamos recién:

GRUB_DEFAULT="Windows Vista (loader) (on /dev/sda1)"

Guardamos y cerramos el archivo, actualizamos la configuración del grub:

grub2-mkconfig -o /boot/grub2/grub.cfg

Y listo. La próxima vez que iniciemos nuestro equipo arrancará el sistema operativo que acabamos de definir.

(volver al índice)

Cómo actualizar el grub

El grub, el gestor de arranque, se instala cuando instalamos Fedora. Sin embargo podemos tener algún inconveniente y necesitar actualizarlo a una versión más reciente que la que venía empaquetada en el disco de instalación. Para hacerlo (siempre como usuarios ‘root’ o ‘sudo’) tenemos que (i) descargar e instalar desde los respositorios oficiales la versión que estemos necesitando, (ii) actualizar la versión que se encuentra presente en nuestro disco, y (iii), generar el nuevo archivo de configuración del grub.

(i) Descargamos desde los repositorios e instalamos mediante yum los paquetes grub2 y grub2-tools

yum install grub2 grub2-tools

(ii) Instalamos la nueva versión del gestor de arranque en el disco que lo contenga (nuestro ejemplo presupone que tenemos solo un disco):

grub2-install /dev/sda

(iii) Actualizamos la configuración del grub:

grub2-mkconfig -o /boot/grub2/grub.cfg

Y listo, cuando reiniciemos el equipo lo haremos con una versión del grub diferente a la del disco de instalación.

(volver al índice)