¿Como reparar el GRUB sin LiveCD?

marzo 27, 2018 , 0 Comments

grub rescue

Sin dudas a todos nos ha llegado a suceder en algún momento que al encender tu ordenador y estar en la espera de que todo inicie con normalidad te has encontrado con una espantosa pantalla que a mas de uno le da miedo ver, si me refiero a que te encuentres con el siguiente mensaje:

“Error not such device
Grub rescue”

Lo peor es que cuando no sabes que hacer, piensas que todo está perdido y tendrás que volver a formatear tu ordenador, más sin en cambio sí cuentas con algo de experiencia sabrás que debes de recurrir a algún livecd de tu distribución, pero que ocurre cuando no lo tienes a la mano.


Pero que nada debemos entender que es lo causa este problema.

Primero la causa principal de este error se debe a que nuestro gestor de arranque está dañado, por cualquier razón, ya sea por la actualización de un nuevo Kernel, del sistema o alguna aplicación o por descuido sencillamente dañaste algún archivo de esta sección de tu sistema.

El grub se aloja dentro de la carpeta /boot, esta en algunas instalaciones personalizadas las suelen instalar en una partición por separado.

Ahora entendido el daño, debemos poner manos a la obra, para ello no ocuparemos nada más que nuestra amada terminal.

Aun que muchos le tienen miedo a trabajar sin entorno gráfico, déjame decirte que es algo común solo debes poner aquí un poco de tu paciencia y sobre todo te aseguro que, si consideras que no tienes nada de conocimiento de esto, aprenderás algo nuevo y entenderás los comandos más básicos que se utilizan en Linux.

Solucion

Comenzaremos con el primer comando este es “ls” con el se nos mostraran todos los directorios así como los archivos que están dentro de este.

Al teclear ls sobre la pantalla de “grub rescue>”
Nos desplegara las particiones activas, algo similar a esto:

(hd0) (hd0,1) (hd0,2) (hd0,3) (hd0,4)(hd1) (hd1,1) (hd1,2)

Donde hdx es el disco duro, si tenemos mas de uno conectado el numero será diferente, en mi caso tengo dos discos. Para el caso de (hdx,#) donde # es el numero de la partición, esta es la forma en que se conforma y como los identificaremos.

Ahora debemos buscar donde esta alojado el grub dentro de las particiones que nos desplegaron. Para ello solo debemos teclar ls + la partición /
Quedando de la siguiente manera

ls (hd0,1)/

De esta manera comenzaremos la búsqueda de la carpeta /boot dentro del listado de las particiones que nos desplego anteriormente, es importante no olvidar la / dado que lo que estamos dictando es que nos muestre el listado de los directorios contenidos él.

Ya identificada la partición donde esta alojada la partición grub, debemos ahora asegurarnos de que contiene los archivos necesarios para reparar el arranque de nuestro sistema para ello solo añadimos lo siguiente al comando anterior.

Suponiendo que la carpeta boot esta dentro del primer disco en su primera partico:

ls (hd0,1)/boot/grub

Confirmada la información debemos añadir el prefijo correspondiente a la carpeta esto lo hacemos con este comando:

set prefix=(hd0,1)/boot/grub

Hecho esto procederemos a forzar la carga del modulo correcto para ello nos apoyaremos de insmod

insmod (hd0,1)/boot/grub/linux.mod

Si tienes dudas de las nomenclaturas de los archivos dentro de tu carpeta boot, recuerda el comando ls este será tu mejor aliado durante este proceso.

Ahora procederemos a indicar al sistema la raíz del grub para ello lo hacemos con este comando:

set root=(hd0,1)

Finalmente procederemos a cargar el Kernel al grub para ello ocupamos el siguiente comando, es meramente explicativo aquí dado que cada quien tiene una versión diferente del Kernel, recuerda el comando ls para verificar cual tienes, siempre utiliza la versión más actual.

linux /boot/vmlinuz-4.13.3-generic-generic root=/dev/sda1

Solo debemos aquí definir la partición donde se encuentra como les comenté las nomenclaturas de las particiones aquí ya debemos utilizar las que usamos comúnmente donde
hd0,1 pasaría a ser /dev/sda1 hd1,1 /dev/sdb1 etc.

Finalmente, solo ejecutamos el siguiente comando y con ello ya podremos ver nuestras opciones para iniciar nuestro sistema:

boot

Como ultima tarea, solo debemos reinstalar el grub para ello ejecutamos el siguiente comando:

grub-install /dev/sdX

Donde sdx es donde tienes instalado tu sistema.

El artículo ¿Como reparar el GRUB sin LiveCD? ha sido originalmente publicado en Linux Adictos.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.