¿Como reparar el GRUB sin LiveCD?

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.


8 comentarios, deja el tuyo

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Luis dijo

    Demasiado jaleo.Con lo fácil que es con SuperGrub2:

    -descargar SuperGrub2

    -lo copias con DD en un USB

    -Arranca con USB y carga el sistema.

    -En caso de ubuntu: sudo grub-install /dev/sdx y luego sudo update-grub2.

    Solucionado.

    1.    yop dijo

      Uf que súper genio, quiero ser como este tipo cuando sea grande, seguro todavía usa Windows y compra directo del escritorio xdxdxd

  2.   IneedaBrain dijo

    Buff, que lío, cuando tengo problemas lo arreglo con el cd BootRepair y tiro millas, mi cabeza no da para tanto xD

  3.   FaustoMX dijo

    Se trata de aprender… y la explicación es excelente.
    Si a esa vamos reinstalo! Se trata de ver metodos alternos de solución y el metodo que explica David funciona y bien.

    Saludos,

    Fausto Zavala

  4.   Milena dijo

    me trajeron mi portatil con:
    error: unknown filesystem.
    grub rescue
    cuando lo hago me sucede que me aparece
    (hd0) (hd0,2) (hd0,1)
    sigo lo de ls + la particion
    pero en ambas me pone UNKNOWN FILESTSYEM asique no se donde se encuentra el grub.
    alguna idea de porque sucede eso?
    aveces tambien me pone «no such partition»
    como si no hubiera nada de nada

    1.    Alberto dijo

      Conseguiste solucionarlo? Tengo el mismo problema

  5.   Manuel dijo

    Me da error en la linea en la que se escribe insmod… linux.mod. Ahi se acaba la historia

    1.    Pato dijo

      en mi caso linux.mod estaba dentro del directorio /boot/grub/i386