Esto es a modo anotación y informativo, aunque existen miles de páginas que hacen referencia a ello.

Aquí pondré los pasos de forma simple de como reparar el grub.

Si alguna vez probasteis a instalar Linux y Windows en el mismo ordenador, verás que cada sistema instala su gestor de arranque propio. En el caso de Linux cuenta con los demás sistemas operativos instalados en el PC, pero en el caso de Windows, instala su gestor de arranque para el mismo y no hace referencia a los demás, provocando que sólo podamos arrancar en Windows cuando ya teníamos instalado Linux, por este motivo se suele instalar primero Windows y después Linux para que nos genere el gestor de arranque sin complicarnos la vida.

Bien, existe solución a este problema sin necesidad de andar a formatear otra vez y tener que configurar todo de nuevo.

Para ello, lo único que necesitamos es un CD de arranque del sistema Linux en su versión Live. Una vez arrancado cargaremos el Terminal y seguimos los siguientes pasos:

  • Primero debemos saber en que partición tenemos instalado Linux, para ello, escribimos en el terminal sudo fdisk /dev/sda (la S hace referencia a los discos SATA, y H a los discos IDE)
  • En el programa, con pulsar la tecla “p” nos mostrará la información de las particiones y anotamos la que tenga como tipo de partición “Linux”
  • En mi caso ha sido, /dev/sda6
  • A continuación seguimos los siguientes pasos:

$ sudo su
$ mkdir /media/ubuntu
$ mount /dev/sda6 /media/ubuntu
$ mount –bind /dev /media/ubuntu/dev
$ mount –bind /proc /media/ubuntu/proc
$ mount –bind /sys /media/ubuntu/sys
$ chroot /media/ubuntu/
$ grub-install /dev/sda

  • Reinicimos el equipo y ya nos saltará el menú de arranque del grub para poder seleccionar entre los siguientes sistemas operativos.
  • NOTA: En caso de tener la partición de /boot por separado, también la tendremos que montar antes de realizar el chroot con el comando mount –bind /boot /media/ubuntu/boot

Este método es válido siempre para el gestor de arranque de Grub y no de Lilo, así mismo en este ejemplo sería con Ubuntu instalado, pero también es válido para otras distribuciones.