Usualmente cuando tengo que reinstalar el
Grub (actualmente Grub 2) es porque este ha sido sustituido por el de otra
distribución que tengo también en la computadora. Recientemente instalé Windows
7 en otra unidad de disco local -por cierto, toda una odisea no exenta de
peligros que ya expondré- y como cabía esperar perdí el menú de Grub; al
arrancar la computadora se iniciaba directamente Windows.
Así que me ha parecido oportuno exponer
estas dos circunstancias por si a alguien que pase por aquí le es útil. No hay
que alarmarse es realmente sencillo; hasta yo soy capaz de hacerlo.
Situaciones distintas
recuperar el Grub (actualmente Grub 2):
Grub ha sido sustituido por el menú de
Grub de otra distribución Linux. En realidad el Grub instalado por una
distribución ha sido sustituido por la instalación del Grub de otra
distribución. Y queremos instalar el Grub inicial con su menú -por las razones
que sean-.
El Grub que teníamos se ha sustituido al
instalar otra distribución, o durante una actualización de otra distribución
que afecta al Grub, este se ha actualizado e se instala su menú sustituyendo al
que había (que es el que queremos recuperar).
Hemos perdido completamente el Grub con su
menú, al encender la computadora o no pasa nada, o arranca directamente
Windows y no podemos entrar a ninguna distribución Linux. Por lo general, esto
sucede cuando instalamos Windows, o cuando hemos recuperado su arranque por
algún incidente.
También podría ocurrir por otros motivos
(al trastear las particiones con Gparted, por ejemplo), y con independencia de
que tengamos o no tengamos Windows en la computadora; no es usual pero es
posible.
Supuestos para desarrollar el tema con un
ejemplo
-En ambos casos la distribución de la que
queremos recupera el Grub es Debian, o una distribución derivada; creo que los
procedimientos que aquí se muestran son válidos también.
-El Grub lo reinstalamos en el MBR del
disco local principal que suele ser sda.
Nota: MBR (Master Boot Record)
es el sector de arranque principal, también conocido como registro de arranque
maestro, y es el primer sector, sector cero, de un dispositivo de
almacenamiento de datos como es un disco duro. Su finalidad puede ser el
arranque del sistema operativo (boot), o también contener la tabla de
particiones, o sólo, y simplemente, para identificar un dispositivo. En los
sistemas Debian por lo general el Grub se instala por defecto en el MBR. Podría
instalarse también en una partición boot específica o en la partición /root de
Debian.
-El esquema de las particiones del disco
local es el que se muestra en la tabla siguiente. La distribución de
particiones, obviamente, puede ser cualquier otra, por eso es importante que
cada uno identifique el disco de arranque (sda), y la partición donde se
encuentra /root de Debian.
sda *
|
MBR
|
||
sda1
|
Primaria
|
Windows
|
|
sda2
|
Primaria
|
Windows
|
|
sda3
|
Primaria
|
Swap
|
|
sda4
|
Extendida
|
||
sda5 *
|
Lógica
|
/root
|
Debian
|
sda6
|
Lógica
|
/home
|
Debian
|
sda7
|
Lógica
|
/root
|
Otra
distribución Linux
|
sda8
|
Lógica
|
/home
|
Otra
distribución Linux
|
Grub de Debian ha sido cambiado por el de
otra distribución, y queremos reinstalar.
Arrancamos la computadora, a través del
menú de Grub (que ahora es el de otra distribución) entramos en Debian, abrimos
una terminal y como root (su y contraseña) o como usuario con privilegios de
root (sudo), reinstalamos el Grub en el MBR del disco local sda:
# grub-install --recheck /dev/sda
Seguidamente actualizamos la configuración
del Grub para que nos detecte todos los SO que tengamos en nuestra computadora,
los que están en el disco local sda, pero también en otros si tenemos algún
otro. Por ejemplo, yo tengo Windows 7 en sdd2
# update-grub
# grub-install –recheck /dev/sda
Hemos perdido el menú de Grub y no
podemos entrar a ninguna distribución Linux
Puede ser que tengamos Windows y al
arrancar la computadoras se inicie directamente este SO. Pero también podría
ser que no tengamos Windows, y el procedimiento sería igual.
Encendemos el ordenador con un LiveCD de
una distribución que utilice grub-2 y de la misma arquitectura (32 o 64 bits);
yo utilicé Kubuntu 14.04 (64 bits).
Una vez se haya cargado el sistema abrimos
la terminal y nos identificamos como root. En el caso de que el LiveCD sea de
Ubuntu o distribuciones derivadas, ejecutamos el siguiente comando:
# sudo su
Si el LiveCD es de Debian tengo entendido,
no lo he utilizado nunca, que se obtienen los privilegios de root mediante:
# user
# contraseña: live
Podemos listar los discos locales y
particiones para localizar donde tenemos la partición /root de Debian, pero lo
más efectivo es saberlo de antemano.
# fdisk -l
Montamos la partición /root de Debian, que
en el presente ejemplo la tenemos en sda5
# mount /dev/sda5 /mnt
Reinstalamos el Grub en el MBR del disco sda
# grub-install --root-directory=/mnt/ /dev/sda
Reiniciamos el equipo, pero sin el LiveCD
Al arrancar la computadora de nuevo ya
tendremos el menú de Grub. Entramos en Debian, abrimos la consola y
actualizamos Grub para que detecte todo los sistemas operativos (puede que
alguno no nos haya aparecido en el menú al arrancar la computadora):
# update-grub
No hay comentarios:
Publicar un comentario