miércoles, 23 de marzo de 2016

Recuperar el GRUB con un LiveCD

Esta es otra entrada del Blog que la incluyo más como recordatorio que por su utilidad, yo hace tiempo que me alejé del Windows y de todas sus mariconadas pero, como he dicho más de una vez, este Blog está pensado, básicamente, para guardar algunos ‘trucos y perfeccionamientos’ que leo por ahí y me parecen interesantes… porque conectado a Internet los tengo muy a mano desde cualquier sitio.

El caso es que el típico usuario que reinstala un Windows, sobre su Linux ya instalado, y se encuentra con ‘la mariconada de turno’ de que el Windows le ha machacado el GRUB y no puede entrar a Linux si no se recompone ese arranque GRUB (GRand Unified Bootloader, que este si que es un gestor de inicio universal).

Y una de las formas de hacerlo es a partir de un LiveCD de Linux, que es lo que voy a explicar aquí. Pero debo decir que ‘supongo’ que funcionará, porque yo (por lo dicho antes) no he tenido ocasión de probarlo.
Y también hay que decir que ya he hablado de otro método de hacerlo, a través de la herramienta Supergrub2, como decía aquí. Pero en fin, para completar el tema, esta sería la (‘teórica’) forma de hacerlo a partir, solamente, de un LiveCD de cualquier distro.
Hay que empezar diciendo que es una pena que Debian hay abandonado, al menos oficialmente, su proyecto Debian-Live (que se llamaba algo así como ‘debian-hybrid’) porque, desde entonces, (no se si el proyecto continua, en manos de terceros) he dejado de interesarme por él. Pero debo decir que nunca me preocupó excesivamente, ya que ya he dicho que vale cualquier distro LiveCD, y yo guardo, de mis tiempos de ‘ubuntero’, un Ubuntu 10.04 (o sea, de hace 6 años) que ya se que está obsoleto, incluso fuera de soporte, pero es muy rápido (aún no existía el Unity, y todas esas historias que, a mi gusto, han dejado un Ubuntu bastante ‘pesadito’, incluso complejo), y me es muy útil para estas historias. (Básicamente lo utilizo para modificar particiones arrancando un Gparted en modo LiveCD). Por tanto, serviría perfectamente para esto.

Pues al asunto... 
Arrancando el PC en tu Linux con un CD/pendrive de Ubuntu o del que sea) en modo LiveCD, lo primero que tienes que saber es en qué partición tienes instalada la raiz (/) del sistema Linux instalado en el disco duro. Esto (si no lo sabes) lo puedes conocer perfectamente a través del Gparted de ese LiveCD, o con el comando ‘sudo fdisk -l’, etc. Y si encima has tenido la buena costumbre de poner etiquetas identificativas en tus particiones, pues más fácil todavía.

Supongamos que esa partición raiz (/) esté instalada en la partición /dev/sda3. Pues lo primero que hay que hacer, en esa sesión del LiveCD, es montarla (por ejemplo en el directorio /mnt), con
sudo mount /dev/sda3 /mnt

Y ahora, en la consola, hay que introducir dos sencillas instrucciones, que lo mejor es, sin más disquisiciones, copiar y pegar. La primera...
sudo grub-install --boot-directory=/mnt/boot /dev/sda
donde (más o menos) decimos que se instale el GRUB en el directorio /boot de la partición montada… y que haga referencia (se aplique) al propio disco duro principal, el /dev/sda

y la segunda, ésta:
sudo grub-install --root-directory=/mnt /dev/sda
Y ya está. Si ahora reiniciamos el PC ya aparecerá el GRUB, desde el que podremos elegir qué sistema operativo (Windows, Linux...) queremos que arranque.

Y, por cierto, si tuviésemos varias distros instaladas, y solo apareciese la primera (la que estaba en /dev/sda3) no problem, arrancamos con ella y, en consola, haciendo un
sudo update-grub
(y si quieres, un
sudo grub-install /dev/sda
para reinstalarlo), las tendremos todas, y habremos resuelto los problemas que nos ocasionó el ‘bendito’ Windows, al reinstalarlo sobre los Linux.

No hay comentarios:

Publicar un comentario