Está en la página 1de 2

Gua de instalacin o recuperacin de GRUB

Qu es GRUB?
GRUB es un gestor de arranque mltiple que se usa comnmente para iniciar dos o ms sistemas operativos instalados en un mismo ordenador.

Fuente http://es.wikipedia.org/wiki/Grub

Gua
Pasa a veces que luego de instalar Lihuen o alguna otra distribucin, deseamos tener instalado por las dudas nuestra copia original de Windows.
Luego de instalarla (asegurndonos de que no hemos instalado el Windows sobre la particin Linux), nos damos cuenta de que GRUB desapareci y
slo podemos arrancar con Windows. Pasa a veces tambin, que la instalacin (de Windows o Linux) falla con idnticos o incluso ms nefastos
resultados (Es posible que no arranque ningn otro sistema operativo.).

La solucin para ambos casos (e incluso algunos ms raros como que se corrompa el primer sector y se rompa GRUB) es la misma. Debemos instalar
GRUB nuevamente. Como hacer esto si no arranca nada (para el caso, que arranque Windows es lo mismo que nada)?? Para esto usamos un LiveCD
de alguna distribucin que nos guste, que ande rpido y sobre todo, que use GRUB para arrancar. Se puede usar Knoppix, GentooLiveCD, Lihuen
LiveCD(comming soon) o cualquiera que tengamos a mano. Ubuntu se puede usar, pero en mquinas con ms de 256 Mb de RAM... De todas formas,
solo utilizaremos la consola.

Una vez que booteamos con el LiveCD, ingresamos como root a una consola.

Primero debemos saber cual es nuestro disco. Si es un disco IDE (mquinas anteriores a 2007) el disco se ver como un archivo en /dev/hd*.
Probamos:
#ls /dev/hd*
/dev/hda /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda4 /dev/hdb /dev/hdb1

Esta salida significa que tenemos un disco IDE (hda) con 4 particiones. Probablemente hdb sea la lectora de cd que tambin es IDE. Si el disco es
SATA o SATA2 (generalmente en mquinas ms nuevas) los discos se ven como archivos e /dev/sd*. Probamos:
#ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sda3 /dev/sda4 /dev/sda5

Esta salida significa que tenemos un disco SATA o SATA2 (sda) con 5 particiones. Si tuviramos ms de un disco SATA se vera como sdb, sdc y as
siguiendo.

Podemos montar momentneamente una particin para ver su contenido e identificarla, si no estamos seguros donde estamos. Primero creamos una
carpeta donde montar:
#mkdir /mnt/disco

Luego montamos una particin en la carpeta que creamos as:


#mount /dev/sdb1 /mnt/disco

Miramos el contenido:
#ls /mnt/disco

Y desmontamos con:
#umount /mnt/disco

Si tira algn error no se asuste, seguramente trat de montar la particin swap ;)

Una vez que tenemos identificado el disco por su contenido, debemos montar la particin que tiene nuestra distribucin de Linux que queremos
recuperar. Por ejemplo, si al mirar el contenido de hda3 vemos algo como
bin etc initrd lost+found opt sbin tmp vmlinuz
boot home initrd.img media proc srv usr
dev include lib mnt root sys var

Es la particin que contiene la raz (/) de nuestro Linux. Entonces montamos la particin en la carpeta que creamos:
#mount /dev/hda3 /mnt/disco

Ahora debemos hacer como que nuestra nueva raz (/) es ese disco, y eso se hace con el comando chroot (cambiar raiz o change root)
#chroot /mnt/disco

Una vez que tenemos la nueva raiz (/) debemos asegurarnos de que el disco se ve. Probamos:
#ls /dev/hd*
/dev/hda /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda4 /dev/hdb /dev/hdb1

Si el disco no se ve, podemos probar de reiniciar y modificar algunos de los parmetros del disco en la BIOS como agregar soporte para discos
grandes, activar LBA, o algo por el estilo. Generalmente si se ven los discos. Si ese es el caso, solo necesitamos reinstalar GRUB en el disco con:
#grub-install /dev/hda

Si todo sali bien, slo nos queda configurar el archivo /boot/grub/menu.lst para incluir a Windows o a nuestro nuevo Linux.

si encontramos alguna falla probemos lo siguiente:

1)booteamos desde un live-cd que permita que montar las particiones encontradas.

2)asumiendo todas las particiones estn montadas, tipeamos


#df
tendramos que ver algo como
/dev/hda1 38503304 32251732 4295660 89% /mnt/linux
/dev/hdc1 10000428 5121376 4879052 52% /mnt/winntfs1

no muestro la unidades montadas del live slo me interesan las unidades montadas con algn sistema instalado. Bueno vemos un linux y windows con
ntfs.

3)Ahora que sabemos donde esta nuestro linux tomamos la decisin de entrar a ese sistema de archivos
#mount --bind /proc /mnt/linux/proc
#mount --bind /sys /mnt/linux/sys
#mount --bind /dev /mnt/linux/dev

#chroot /mnt/linux
#ls /dev/ | grep hd

escribimos grub como root


#grub

escribimos find
#find /boot/grub/stage1

si todo sale bien nos dar donde esta alojado grub en formato (hdx,x) ahora seteamos root
#root (hdx,x)

ahora solo resta instalar grub


#setup (hdx)

para salir de grub escribimos


#quit

si tenemos grub 2 cambian los pasos de la siguiente manera

tipeamos search
#search /boot/grub/stage1

si todo sale bien nos dar donde esta alojado grub en formato (hdx,x) ahora seteamos root
#set root=(hdx,x)

ahora solo resta instalar grub


#setup (hdx)

para salir de grub escribimos


#quit

ahora si por desmontamos lo anterior


#umount /mnt/linux/proc
#umount /mnt/linux/dev
#umount /mnt/linux/sys

ahora reiniciamos y listo.


nuevamente, si solo aparece un prompt de grub, entonces algo pas, no se preocupe hagamos lo siguiente.
grub> find /boot/grub/stage1
grub> root (hdx,x)
grub> setup (hdx)
grub> quit

o si solo quiere arrancar el sistema para poder ver si lo puede arreglar desde otro entorno entonces
grub> find /boot/grub/stage1
grub> root (hdx,x)
grub> kernel /boot/vmlinux-2.6.xx-x-xxx root=/dev/hd?+1*
grub> initrd /boot/initrd.img-2.6.xx-x-xxx
grub> boot

ahora habr arrancado. en grub 2 sera


grub> search /boot/grub/stage1
grub> set root=(hdx,x)
grub> linux /boot/vmlinux-2.6.xx-x-xxx root=/dev/hd?+1*
grub> initrd /boot/initrd.img-2.6.xx-x-xxx
grub> boot

el * es porque generalmente root suele estar en 1 + de donde se aloja grub ejemplo grub est en /dev/hda que sera hd0 y root estara en /dev/hda1
que sera (hd0,1) lo mismo para discos sata solo cambia sda,sda1, sdx,y.

Espero le sea de ayuda.

Ante cualquier duda o inconveniente no dudes en visitar nuestros foros.


http://lihuen.linti.unlp.edu.ar/foros

También podría gustarte