Archivo de la categoría: Grub

Debian: Cómo restaurar GRUB en un sistema multiboot

Hola a todos!

Acabo de platicarles sobre cómo solucioné el problema del arranque en Windows tras haber modificado las particiones de mi computadora. Sin embargo, esa no fue toda la historia, ocurrió otra cosa de la que quiero platicarles. Antes de apagar el sistema mientras ejecutaba el disco vivo (DVD con Kali Linux), decidí ejecutar un «update-grub2» para precisamente evitar lo que pasó con Windows pero a nivel de todos los otros sistemas operativos (antes solo Debian 8 Jessie y por cuestiones del proyecto que les comenté de videojuegos, ahora también Android 4.2.2 JellyBean en una cuarta y última partición).

Sin embargo, al montar la partición con Debian, sda2, y entrar a chroot, no podía ejecutar update-grub2, ni siquiera update-grub ni tampoco llamándolos directamente desde /mnt/usr/sbin/update-grub*

update-grub: orden no encontrada

¿Cómo solucionar este problema? Resulta que tenemos que ser mucho más específicos que sólo montar la partición donde está instalado el sistema operativo que maneja Grub (en mi caso sda2 con Debian). Hay que montar directorios adicionales y copiar un archivo de configuración, que nos permitirán eventualmente ejecutar el update-grub2 dentro de chroot. El procedimiento es el siguiente: (recuerden que necesitamos tener privilegios de súper usuario para ejecutar todos estos comandos sin problema)

  • Hacemos «fdisk -l» para identificar nuestra distribución Linux que maneja Grub (en mi caso sda2 que contiene Debian 8).
  • Luego ingresamos esta serie de comando: «mount /dev/sdXX /mnt && mount –bind /dev /mnt/dev && mount –bind /proc /mnt/proc && mount –bind /sys /mnt/sys && mount –bind /dev/pts /mnt/dev/pts && cp /etc/resolv.conf /mnt/etc/resolv.conf && chroot /mnt». En sdXX hay que reemplazar XX con el medio y partición donde se encuentre el SO que maneja Grub (en mi caso a2, para completar sda2). Notemos que al final debimos de haber entrado a chroot sobre dicha partición.
  • Ahora que estamos en chroot, hacemos «update-grub2», o «update-grub». Debería correr sin problemas.
  • Salimso de chroot «exit»
  • Desmontamos todo «umount /mnt/dev/pts && umount /mnt/dev && umount /mnt/proc && umount /mnt/sys && umount /mnt»
  • Reiniciamos el equipo «reboot».

¡Y listo! Grub debería cargar todos tus sistemas operativos como lo hayas configurado por última vez de manera exitosa.

Este método debería ser efectivo para recuperar Grub en un sistema que utiliza cualquier distribución(es) de Linux y algún(os) otro(s) SO. La única condición es que el disco vivo que usemos para restaurar, sea de una distro basada en Debian (Debian, Ubuntu, Kali, Knoppix…)

El procedimiento lo encontré tras un rato de frustración en los foros de ubuntu.

Espero les sea de utilidad.