- GRUB suele romperse por cambios en particiones, instalaciones de otros sistemas o errores de actualización, pero casi siempre es recuperable.
- Es posible arrancar manualmente desde la consola de GRUB, localizar la partición correcta y reinstalar el cargador desde el propio sistema.
- Con un Live USB de Ubuntu puedes usar Boot-Repair o un chroot manual para reinstalar GRUB y regenerar su configuración.
- Incluso en sistemas cifrados, montando correctamente las particiones y reinstalando los paquetes de GRUB se puede restaurar el arranque.
Cuando el GRUB se rompe y tu sistema GNU/Linux deja de arrancar, la sensación de haberse quedado sin máquina es bastante real: pantalla negra, errores raros o, peor aún, salto directo a la BIOS/UEFI. Por suerte, en la mayoría de los casos no has perdido nada; lo que se ha estropeado es el gestor de arranque y se puede recuperar siguiendo unos cuantos pasos con calma, y si necesitas diagnosticar tiempos y cuellos de botella puedes usar el perfilado del arranque con systemd-analyze.
En este artículo vamos a ver, de forma muy detallada y con un lenguaje lo más claro posible, cómo reparar GRUB usando tanto su propia línea de comandos como distintos métodos con Live CD/USB, incluyendo herramientas automáticas como Boot-Repair y procedimientos manuales con chroot. También revisaremos por qué suele romperse GRUB y qué hacer cuando faltan comandos como update-grub o incluso grub-install.
Qué es GRUB y por qué puede romperse
GRUB (GNU GRand Unified Bootloader) es el gestor de arranque que usan la gran mayoría de distribuciones GNU/Linux. Es esa pantalla inicial donde eliges qué sistema operativo arrancar cuando tienes varios instalados, o donde seleccionas el modo de recuperación o un kernel diferente.
Si GRUB se daña o desaparece del MBR o de la partición EFI, el equipo simplemente dejará de entrar al sistema y se quedará bloqueado en un mensaje de error, una consola de GRUB o, directamente, en la configuración de la BIOS/UEFI. Esto no significa que el sistema esté perdido, solo que la máquina no sabe “desde dónde” arrancarlo.
Los motivos más habituales para que se rompa GRUB suelen ser estos:
- Instalar Windows después de GNU/Linux: Windows suele sobrescribir el MBR o la partición EFI con su propio cargador, borrando la referencia a GRUB. Si esto te ocurre, puede ser útil seguir una guía específica sobre el rescate de GRUB en Windows 10.
- Tocar las particiones del disco sin cuidado: redimensionar, borrar o mover particiones puede hacer que la ruta donde GRUB espera encontrar sus archivos ya no exista o cambie de número. Para minimizar riesgos conviene aprender a gestionar particiones sin perder datos.
- Alguna actualización extraña: no es lo más frecuente, pero una actualización del sistema o del propio GRUB puede quedar incompleta o mal configurada y dejar el arranque inutilizable.
- Cambios en la configuración de UEFI/BIOS o en el orden de arranque: desactivar arranque seguro, cambiar el modo de arranque (Legacy/UEFI) o modificar el disco principal puede hacer que se pierda la entrada de GRUB; si dudas, revisa qué ocurre si tocas secure boot.
Lo bueno es que en casi todos estos casos se puede reconstruir GRUB y volver a arrancar sin reinstalar todo el sistema, ya sea desde el propio menú de GRUB, desde un modo rescate o usando un Live USB.
Reparar GRUB desde su propia línea de comandos (sin Live USB)
Si al encender el ordenador sigues viendo el menú de GRUB o, al menos, una consola de GRUB, puedes intentar arrancar manualmente el sistema desde ahí y luego reinstalar el gestor de arranque para que quede todo como antes.
Acceder al menú de GRUB y detener la cuenta atrás
En cuanto aparezca el menú de GRUB, pulsa las teclas de cursor (arriba o abajo) para parar el temporizador que lanza el arranque automático. Si GRUB está medianamente funcional, con esto te quedarás en el menú sin que se inicie ningún sistema.
Si el error es más serio y GRUB no llega a mostrar su menú gráfico, es posible que aparezca directamente una consola con un mensaje tipo grub> o grub rescue>. En ese caso, trabajaremos desde ahí sin pasar por el menú.
Para entrar a la línea de comandos avanzada de GRUB desde el menú, basta con pulsar la tecla c. Esto te dejará en un prompt de GRUB donde podrás escribir los comandos que vamos a usar a continuación.
Listar discos y particiones con GRUB
Lo primero es averiguar qué discos y particiones ve GRUB. En la consola de GRUB escribe:
ls
El comando ls en GRUB muestra los discos como (hd0), (hd1), etc., y sus particiones como (hd0,1), (hd0,msdos1), (hd0,gpt2) y combinaciones similares dependiendo si la tabla de particiones es MBR o GPT.
Un ejemplo sencillo sería que aparezca solo un disco: (hd0) con particiones como (hd0,msdos1) y (hd0,msdos5). En máquinas con varios discos puedes ver algo como:
(hd0) (hd0,1) (hd1) (hd1,1) (hd1,5) (hd2) (hd2,1) (hd3) (hd3,1)
Cada uno de esos elementos es un candidato a contener tu sistema y el directorio /boot, que es lo que tenemos que identificar ahora.
Localizar la carpeta /boot y el directorio de GRUB
El siguiente paso es averiguar en qué partición está instalado GNU/Linux y, dentro de ella, dónde está el directorio donde GRUB guarda sus archivos, normalmente /boot/grub.
Para investigar cada partición, usa de nuevo ls pero indicando disco y partición, terminando siempre con una barra inclinada al final:
ls (hd0,1)/
Ten en cuenta que el teclado en la consola de GRUB suele estar en distribución americana, así que los paréntesis de apertura y cierre suelen estar en las teclas 9 y 0, y la barra / puede estar donde normalmente va el guion - en un teclado en español.
Si ves directorios típicos de GNU/Linux como bin, etc, home, usr, etc., estás ante una partición de sistema. Dentro de ella deberías encontrar un directorio boot:
ls (hd0,1)/boot/
Si en esa ruta aparecen archivos como vmlinuz-... e initrd.img-... y un directorio grub, ya has localizado la partición que nos interesa para indicar a GRUB dónde buscar el kernel.
Definir la ruta de GRUB y la raíz del sistema
Una vez identificada la partición correcta, hay que decirle a GRUB dónde está su directorio y cuál es la raíz del sistema. Supongamos que es (hd0,1). En la consola de GRUB ejecuta:
set prefix=(hd0,1)/boot/grub
En algunos teclados, la tecla donde normalmente está el signo de interrogación puede generar el signo igual =, así que si ves un comportamiento raro, prueba diferentes teclas hasta que salga el carácter correcto.
Después, establece la raíz del sistema de archivos que se va a usar para arrancar:
set root=(hd0,1)
Con estos dos comandos, GRUB ya sabe dónde está su configuración y qué partición utilizar como referencia para el arranque.
Ver los kernels disponibles y cargar uno manualmente
Ahora toca comprobar qué kernels tenemos en /boot y cargar uno de ellos. De nuevo puedes usar ls para echar un vistazo:
ls (hd0,1)/boot/
Deberías ver uno o varios archivos con nombre similar a vmlinuz-6.1.0-10-amd64, y sus correspondientes imágenes initrd, por ejemplo initrd.img-6.1.0-10-amd64. Si necesitas compilar o instalar kernels manualmente, consulta cómo descargar y compilar el kernel Linux. Elige uno de los kernels y cárgalo con:
linux /boot/vmlinuz-6.1.0-10-amd64 root=/dev/sda1
La ruta del dispositivo raíz (root=/dev/sdXn) debe corresponderse con la partición donde está tu sistema. GRUB numera los discos como hd0, hd1, etc., mientras que en GNU/Linux aparecen como /dev/sda, /dev/sdb, etc. La equivalencia típica es:
- hd0 → /dev/sda
- hd1 → /dev/sdb
- hd2 → /dev/sdc
- hd3 → /dev/sdd
Para facilitar la escritura de rutas y nombres largos en la consola de GRUB puedes usar la tecla TAB para autocompletar tanto nombres de archivos como rutas de directorios.
No olvides cargar también la imagen initrd correspondiente, algo así como:
initrd /boot/initrd.img-6.1.0-10-amd64
Una vez que has definido el kernel y la initrd, solo queda iniciar el proceso de arranque con:
boot
Si todo va bien, el sistema debería arrancar con el kernel que has elegido. Si da problemas, puedes repetir el procedimiento con otro kernel disponible, por ejemplo uno más antiguo, hasta que arranque correctamente. Si además necesitas pasar opciones temporales al kernel, revisa cómo añadir parámetros de arranque al GRUB.
Reinstalar GRUB desde el sistema ya arrancado
Cuando consigas entrar de nuevo al sistema, es clave dejar GRUB instalado correctamente para no tener que repetir este proceso manual cada vez que reinicies.
Abre un terminal con privilegios de superusuario (ya sea iniciando sesión como root o usando sudo) y ejecuta:
grub-install /dev/sda
Asegúrate de indicar solo el disco completo y no una partición concreta, es decir, /dev/sda y no /dev/sda1. Comprueba también cuál es tu disco principal (/dev/sda, /dev/sdb, etc.) antes de lanzar el comando.
Después conviene regenerar por completo la configuración de GRUB y los initramfs para que se detecten todos los sistemas y kernels:
update-grub2
update-initramfs -u
Tras esto, ya deberías tener el GRUB plenamente operativo, con su menú actualizado y listo para los siguientes reinicios.
Reparar GRUB con Boot-Repair desde un Live CD/USB de Ubuntu

Cuando el sistema no arranca de ninguna forma o preferimos una solución automática, la herramienta Boot-Repair es una de las opciones más cómodas. Funciona sobre todo desde un entorno Live de Ubuntu (o derivadas) y se encarga de reinstalar y reconfigurar GRUB casi sin intervención.
Preparar el Live USB/CD
Lo primero es crear un medio de arranque con Ubuntu en modo Live. Descarga la imagen ISO de Ubuntu desde la web oficial y, en otro equipo, genera un USB booteable:
- En Windows puedes usar Rufus para grabar la ISO en el pendrive.
- En otra distro GNU/Linux puedes utilizar herramientas como Startup Disk Creator (incluida en Ubuntu) o
ddcon mucho cuidado.
Una vez tengas el USB o el CD preparado, conéctalo en el equipo que tiene el GRUB roto.
Arrancar desde el Live USB/CD de Ubuntu
Enciende o reinicia el ordenador y entra en el menú de arranque rápido, que suele ser una de estas teclas: F12, Esc, F2, F10 (depende del fabricante). Desde allí, selecciona el USB o el lector de CD como dispositivo de arranque. Si necesitas actualizar la BIOS por incompatibilidades, revisa cómo actualizar el firmware del BIOS.
Cuando aparezca el menú de Ubuntu, elige la opción de probar el sistema sin instalar (algo tipo “Probar Ubuntu sin instalar” / “Try Ubuntu”). Esto cargará el entorno Live desde memoria, sin tocar discos todavía.
Instalar Boot-Repair en el entorno Live
Ya dentro del escritorio Live, abre una terminal (normalmente desde el menú de aplicaciones o con Ctrl+Alt+T). Desde ahí, tendrás que añadir el repositorio de Boot-Repair e instalar la herramienta; el procedimiento varía con el tiempo, pero en general es algo como:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install boot-repair
Este proceso descargará Boot-Repair y sus dependencias. Necesitarás conexión a Internet, así que comprueba que el Live tiene acceso a la red (por cable o wifi) antes de empezar.
Ejecutar Boot-Repair y usar la reparación recomendada
Cuando la instalación haya terminado, lanza la herramienta con:
boot-repair
Se abrirá una ventana gráfica analizando automáticamente los discos y sistemas instalados. Verás dos grandes opciones: la recomendada y la avanzada. Para la mayoría de usuarios, basta con hacer clic en la opción de “Reparación recomendada”.
Boot-Repair se encargará de reinstalar GRUB, regenerar su configuración y ajustar la entrada de arranque en UEFI o MBR, según el tipo de sistema. Durante el proceso, puede mostrar mensajes con lo que va haciendo y, en algunos casos, pedir confirmación de ciertos pasos.
Al finalizar la reparación, la herramienta suele mostrar un informe con el resultado y un enlace a un log (a menos que le indiques lo contrario en sus opciones). Ese log es útil si algo ha ido mal y necesitas pedir ayuda en foros o comunidades.
Reiniciar el equipo y comprobar el menú de GRUB
Una vez Boot-Repair termine su trabajo, cierra la herramienta, apaga el sistema Live y retira el USB/CD. Después, enciende el ordenador de forma normal.
Si todo ha ido como debería, deberías ver de nuevo el menú de GRUB con todos los sistemas detectados: tu GNU/Linux principal, otros Linux que tengas, posibles Windows, etc. Elige el que quieras y comprueba que entra sin problemas.
Si todavía hay fallos, puedes repetir la ejecución de Boot-Repair, pero esta vez probando la configuración avanzada: elegir en qué disco instalar GRUB, forzar la reparación del sistema de archivos, cambiar el sistema por defecto de arranque o ajustar el tiempo de espera del menú.
Reparar GRUB con un Live CD/USB de Ubuntu de forma manual (chroot)
Cuando no queremos depender de Boot-Repair o no está disponible, podemos reparar GRUB desde un Live USB de forma más manual, usando el clásico truco del chroot: montar la partición del sistema y “entrar” en ella como si la hubiéramos arrancado.
Identificar y montar la partición de GNU/Linux
Arranca desde el Live USB/CD de Ubuntu igual que antes, eligiendo la opción de probar sin instalar. Una vez en el escritorio, abre una terminal.
Empieza listando las particiones del sistema con una herramienta como lsblk o fdisk:
sudo lsblk
sudo fdisk -l
Busca la partición donde está instalado tu sistema GNU/Linux. Normalmente será algo como /dev/sda1, /dev/sda2, /dev/nvme0n1p2, etc. Puedes guiarte por el tamaño, el tipo (Linux filesystem) o el punto de montaje si el entorno gráfico ya la ha montado automáticamente. Aprovecha para revisar el estado del disco y su mantenimiento básico con guías de mantenimiento del disco duro en Linux.
Una vez la tengas clara, crea un punto de montaje y monta la partición raíz (suponiendo que sea /dev/sda1):
sudo mount /dev/sda1 /mnt
Si tienes una partición /boot separada o una partición EFI independiente, deberás montarlas también dentro de /mnt para que el chroot funcione correctamente:
sudo mount /dev/sdaX /mnt/boot # si /boot está separado
sudo mount /dev/sdY /mnt/boot/efi # si hay partición EFI
Montar los sistemas de archivos necesarios y usar chroot
Antes de usar chroot hay que “inyectar” algunos sistemas de archivos del Live dentro del entorno montado, utilizando montajes de tipo bind. Por ejemplo:
for i in /dev /dev/pts /proc /sys /run; do sudo mount --bind $i /mnt$i; done
Si al ejecutar este bucle ves un mensaje de “error de sintaxis cerca de do”, revisa cuidadosamente que has escrito los espacios, puntos y punto y coma correctamente. En caso de duda, puedes montar cada directorio de uno en uno:
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo mount --bind /run /mnt/run
Cuando tengas todo montado, entra al sistema instalado con:
sudo chroot /mnt
A partir de este momento, los comandos que ejecutes se comportan como si hubieras arrancado tu GNU/Linux instalado, no el sistema Live. Esto te permite reinstalar GRUB y regenerar su configuración igual que harías normalmente.
Reinstalar y configurar GRUB desde el chroot
Dentro del chroot, reinstalar GRUB es tan sencillo como ejecutar (ajustando el disco principal según tu caso):
grub-install /dev/sda
Si al intentarlo recibes un mensaje de que grub-install no existe, puede que el paquete de GRUB no esté instalado o esté dañado. En ese caso, intenta reinstalarlo:
apt update
apt install --reinstall grub-pc # para sistemas BIOS/MBR
apt install --reinstall grub-efi-amd64 # para sistemas UEFI x86_64
Una vez que el comando grub-install esté disponible y funcione, regenera la configuración de GRUB. Si no tienes update-grub, recuerda que es básicamente un “atajo” a grub-mkconfig, así que puedes usar directamente:
grub-mkconfig -o /boot/grub/grub.cfg
Este comando analizará el sistema, detectará kernels, otros sistemas operativos instalados y generará un archivo grub.cfg completo con todas las entradas de arranque necesarias. Si trabajas en UEFI y te aparecen problemas relacionados con arranque seguro, consulta la guía sobre secure boot violation: causas y soluciones.
Salir del chroot, desmontar y reiniciar
Cuando hayas terminado con la reinstalación de GRUB y la regeneración de la configuración, sal del chroot escribiendo:
exit
Después, desmonta los sistemas de archivos que habías montado (en orden inverso es lo más limpio):
sudo umount /mnt/run
sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev/pts
sudo umount /mnt/dev
sudo umount /mnt/boot/efi # si la montaste
sudo umount /mnt/boot # si la montaste
sudo umount /mnt
Ahora ya puedes reiniciar el equipo, retirar el USB/CD Live y probar el arranque normal. Lo habitual es que el menú de GRUB aparezca de nuevo y el sistema funcione con normalidad.
Casos especiales: sistemas cifrados y faltan herramientas de GRUB
En sistemas cifrados (por ejemplo, con LUKS) o instalaciones más complejas, los problemas de GRUB se pueden hacer un poco más delicados, sobre todo si mezclas particiones cifradas, particiones EFI y cambios de kernel.
Un escenario típico es querer arrancar con un kernel nuevo (por ejemplo, pasar de una versión 6.4.x a 6.5.x) y encontrarse con que el menú de GRUB aún apunta al kernel antiguo o directamente a uno que ya no existe. Si en ese momento ejecutas update-grub y resulta que no está instalado, y tiras de grub-mkconfig -o /boot/grub/grub.cfg, puedes dejar la configuración en un estado incoherente. Si el problema está causado por una mala entrada en /etc/fstab, revisa la guía sobre cómo arreglar un problema de arranque por fstab.
En sistemas cifrados suele ocurrir que tras introducir la contraseña de descifrado, en lugar de continuar con el arranque, la máquina salte a la configuración UEFI o se quede bloqueada con mensajes mínimos, lo que indica que hay un problema serio en la fase de carga de GRUB o del kernel.
Si desde un Live USB sigues una guía y te aparece un error de sintaxis al ejecutar bucles for o comandos compuestos, revisa muy bien espacios, comillas y signos de puntuación. Muchas guías copian comandos con saltos de línea o caracteres raros que el shell no interpreta bien si los tecleas a mano.
Cuando grub-install no está disponible ni siquiera dentro del chroot (no está en /usr/sbin ni en /usr/bin), es señal de que el paquete de GRUB no está instalado o que el sistema está parcialmente roto. En ese caso, intenta recuperar primero la herramienta:
apt update
apt install grub-pc grub-efi-amd64
Si el gestor de paquetes funciona y descarga los paquetes necesarios, podrás recuperar grub-install y continuar con la reinstalación normal. Si ni siquiera puedes instalar paquetes, quizá te compense valorar una copia de datos y una reinstalación limpia, aunque suele ser el último recurso.
En cualquier caso, incluso en configuraciones cifradas, la idea general no cambia: localizar la partición correcta, montar todo lo necesario, chroot, reinstalar GRUB y regenerar la configuración. Lo más delicado es identificar bien qué particiones intervienen en el arranque (EFI, /boot sin cifrar, volumen LUKS, LVM, etc.).
Con calma, verificando cada comando y anotando los mensajes de error, es perfectamente posible rescatar un sistema que a primera vista parece “muerto” por culpa del GRUB, tanto si usas herramientas gráficas como Boot-Repair como si prefieres hacerlo a mano con chroot y los comandos tradicionales.
Redactor apasionado del mundo de los bytes y la tecnología en general. Me encanta compartir mis conocimientos a través de la escritura, y eso es lo que haré en este blog, mostrarte todo lo más interesante sobre gadgets, software, hardware, tendencias tecnológicas, y más. Mi objetivo es ayudarte a navegar por el mundo digital de forma sencilla y entretenida.
