Cómo recuperar Grub 2 de Debian (y distribuciones derivadas) porque ha sido sustituido por el de otra distribución, o porque lo hemos perdido completamente.

recuperar grub en debian

Usualmente cuando tengo que reinstalar Grub (actualmente Grub 2) es porque este ha sido sustituido por el de otra distribución que tengo también en la computadora. Recientemente instalé Windows 7 en otra unidad de disco local -por cierto, toda una odisea no exenta de peligros que ya expondré- y como cabía esperar perdí el menú de Grub; al arrancar la computadora se iniciaba directamente Windows.

Así que me ha parecido oportuno exponer estas dos circunstancias en las que tenemos que recuperar Grub por si a alguien que pase por aquí le es útil. No hay que alarmarse es realmente sencillo; hasta yo soy capaz de hacerlo.

1. Dos situaciones distintas para recuperar Grub

Hay al menos dos situaciones en la que tenemos que recuperar Grub (actualmente Grub 2):

1.1. El menú de Grub ha sido sustituido por el menú de Grub de otra distribución Linux

En realidad el Grub instalado por una distribución ha sido sustituido por la instalación del Grub de otra distribución. Y queremos recuperar Grub inicial con su menú -por las razones que sean-.

El Grub que teníamos se ha sustituido al instalar otra distribución, o durante una actualización de otra distribución que afecta al Grub, este se ha actualizado e se instala su menú sustituyendo al que había (que es el que queremos recuperar).

También cabría aquí que, simplemente, queremos cambiar el menú de Grub de una distribución por el de otra; porque nos gusta más o porque queremos probarlo.

1.2. Hemos perdido completamente el Grub con su menú

Al encender la computadora o no pasa nada, o arranca directamente Windows y no podemos entrar a ninguna distribución Linux. Por lo general, esto sucede cuando instalamos Windows, o cuando hemos recuperado su arranque por algún incidente.

También podría ocurrir por otros motivos (al trastear las particiones con Gparted, por ejemplo), y con independencia de que tengamos o no tengamos Windows en la computadora; no es usual pero es posible.

2. Supuestos para desarrollar el tema con un ejemplo

-En ambos casos la distribución de la que queremos recupera el Grub es Debian, o una distribución derivada; creo que los procedimientos que aquí se muestran son válidos también.

-El Grub lo reinstalamos en el MBR del disco local principal que suele ser sda.

Nota: MBR (Master Boot Record) es el sector de arranque principal, también conocido como registro de arranque maestro, y es el primer sector, sector cero, de un dispositivo de almacenamiento de datos como es un disco duro. Su finalidad puede ser el arranque del sistema operativo (boot), o también contener la tabla de particiones, o sólo, y simplemente, para identificar un dispositivo. En los sistemas Debian por lo general el Grub se instala por defecto en el MBR. Podría instalarse también en una partición boot específica o en la partición /root de Debian.

-El esquema de las particiones del disco local es el que se muestra en la tabla siguiente. La distribución de particiones, obviamente, puede ser cualquier otra, por eso es importante que cada uno identifique el disco de arranque (sda), y la partición donde se encuentra /root de Debian.

sda *MBR
sda1PrimariaWindows
sda2PrimariaWindows
sda3PrimariaSwap
sda4Extendida
sda5 *Lógica/rootDebian
sda6Lógica/homeDebian
sda7Lógica/rootOtra distribución Linux
sda8Lógica/homeOtra distribución Linux

2.1 Situación 1:

El menú del Grub de Debian ha sido sustituido por el de otra distribución, y queremos reinstalar aquél

Arrancamos la computadora, a través del menú de Grub (que ahora es el de otra distribución) entramos en Debian, abrimos una terminal y como root (su y contraseña) o como usuario con privilegios de root (sudo), reinstalamos el Grub en el MBR del disco local sda:

# grub-install --recheck /dev/sda

Seguidamente actualizamos la configuración del Grub para que nos detecte todos los SO que tengamos en nuestra computadora, los que están en el disco local sda, pero también en otros si tenemos algún otro. Por ejemplo, yo tengo Windows 7 en sdd2.

# update-grub

2.2. Situación 2:

Hemos perdido el menú de Grub y no podemos entrar a ninguna distribución Linux

Puede ser que tengamos Windows y al arrancar la computadoras se inicie directamente este SO. Pero también podría ser que no tengamos Windows, y el procedimiento sería igual.

Encendemos el ordenador con un LiveCD de una distribución que utilice grub-2 y de la misma arquitectura (32 o 64 bits); yo utilicé Kubuntu 14.04 (64 bits).

Una vez se haya cargado el sistema abrimos la terminal y nos identificamos como root. En el caso de que el LiveCD sea de Ubuntu o distribuciones derivadas, ejecutamos el siguiente comando:

# sudo su

Si el LiveCD es de Debian tengo entendido, no lo he utilizado nunca, que se obtienen los privilegios de root mediante:

# user

# contraseña: live

Podemos listar los discos locales y particiones para localizar donde tenemos la partición /root de Debian, pero lo más efectivo es saberlo de antemano.

# fdisk -l

Montamos la partición /root de Debian, que en el presente ejemplo la tenemos en sda5:

# mount /dev/sda5 /mnt

Reinstalamos el Grub en el MBR del disco sda:

# grub-install --root-directory=/mnt/ /dev/sda

Reiniciamos el equipo, pero sin el LiveCD.

Al arrancar la computadora de nuevo ya tendremos el menú de Grub. Entramos en Debian, abrimos la consola y actualizamos Grub para que detecte todo los sistemas operativos (puede que alguno no nos haya aparecido en el menú al arrancar la computadora):

# update-grub

Y esto es todo, sencillo y fácil.

Saludos flamencos,

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

14 ideas sobre “Cómo recuperar Grub 2 de Debian (y distribuciones derivadas) porque ha sido sustituido por el de otra distribución, o porque lo hemos perdido completamente.”

A %d blogueros les gusta esto: