miércoles, 14 de julio de 2010

Recuperar el Grub



/********************************************************************************/
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* RECUPERAR EL GRUB

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/********************************************************************************/


/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/



Si tienes unos conocimientos medios los pasos son :


sudo mkdir /media/ubuntu
sudo mount /dev/sda2  /media/ubuntu/
sudo mount --bind /dev /media/ubuntu/dev
sudo mount --bind /proc /media/ubuntu/proc
sudo mount --bind /sys /media/ubuntu/sys
sudo chroot /media/ubuntu/
grub-install /dev/sda

Donde sda2  es el device donde se encuentra el /boot de lo contrario, si apenas estas sumergiendote en el mundo de linux acontinuacion muestro como recuperar el grub con los comandos utilizados anteriormente pero dando una expliacion para cada paso





1 - ) *** sudo fdisk -l
para ver las distintas particiones de nuestro duro y verificar cual es
la direccion de nuestra particion raiz d nuestro SO GNU/LINUX

no retornara algo parecido a esto ...

Disco /dev/sda: 82.3 GB, 82348277760 bytes
88 cabezas, 49 sectores/pista, 37299 cilindros
Unidades = cilindros de 4312 * 512 = 2207744 bytes
Tamaño de sector (lógico / físico): 512 bytes / 512 bytes
Tamaño E/S (mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco: 0x00065cd4

Dispositivo Inicio    Comienzo      Fin      Bloques   Id  Sistema
/dev/sda1               1          1812      3905536   82  Linux swap / Solaris
/dev/sda2            1812          7248     11718656   83  Linux
/dev/sda3            7248         20836     29296640   83  Linux
/dev/sda4   *       20838         37298     35487585    7  HPFS/NTFS

en mi caso la raiz de mi SO GNU/LINUX es /dev/sda2 la cual tiene un tamaño de 12 Gb y como la /dev/sda2
  tiene una cantidad de bloques de 11718656 Kb lo cual lo puedo dividir entre 1.000.000  y me
da la cantidad de 11,718656 que es lo mas o menos tiene mi particion raiz, por ejemplo la
swap tiene un tamaño de 4 Gb y el campo bloques del comando fdisk -l me dice que tiene 3905536
  Kb/1000000 Kb*Gb =3,905536 Gb Una vez descubierta nuestra raiz procedemos con el paso 2



/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/


2 - )
Se crea una carpeta donde montaremos La particion RAIZ DE NUESTRO SISTEMAS GNU/LINUX

**** sudo mkdir /media/ubuntu


/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/


3 - )
verificamos que se haya creado la carpeta con :

**** ls -l /media/


total 1
drwxr-xr-x 2 root   root     40 2010-07-14 02:55 ubuntu

una vez que estamos seguros de la existencia del punto de montaje para nuestro Sistema Operativo pasamos al paso 4


/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/

4 -)
Como mi directorio raiz es /dev/sda2
la operacion siguiente sera montar la particion de Nuestro Gnu/Linux en la carpeta creada en el paso 2
que como dije /media/ubuntu sera el nuevo punto de montaje de nuestro Sistema Operativo recuerde el nombre
  de la carpeta no necesariamente tiene que ser ubuntu, ud puede colocar el que mejor le parezca, solo tiene
  que adaptar los pasos a las modificaciones que haya hecho


**** sudo mount /dev/sda2  /media/ubuntu/


<ª----------------  este paso es opcional  -------------------->
Verificamos que haya montado la raiz de nuestro SO GNU/LINUX con :

*** ls -l /media/ubuntu/

y este comando deberia arrojarnos un valor bien paraceido a este


total 108
drwxr-xr-x   2 root root  4096 2010-07-11 02:53 bin
drwxr-xr-x   3 root root  4096 2010-07-11 02:54 boot
drwxr-xr-x   2 root root  4096 2010-07-11 02:51 cdrom
drwxr-xr-x   4 root root  4096 2010-07-11 02:52 dev
drwxr-xr-x 141 root root 12288 2010-07-14 02:16 etc
drwxr-xr-x   2 root root  4096 2010-07-11 02:42 home
lrwxrwxrwx   1 root root    33 2010-07-11 02:53 initrd.img -> boot/initrd.img-2.6.32-21-generic
drwxr-xr-x  20 root root 12288 2010-07-11 02:53 lib
drwx------   2 root root 16384 2010-07-11 02:42 lost+found
drwxr-xr-x   3 root root  4096 2010-07-14 00:08 media
drwxr-xr-x   2 root root  4096 2010-04-23 10:11 mnt
drwxr-xr-x   3 root root  4096 2010-07-11 06:00 opt
drwxr-xr-x   2 root root  4096 2010-04-23 10:11 proc
drwx------  12 root root  4096 2010-07-13 01:23 root
drwxr-xr-x   2 root root  4096 2010-07-11 02:55 sbin
drwxr-xr-x   2 root root  4096 2009-12-05 21:55 selinux
drwxr-xr-x   2 root root  4096 2010-04-29 12:17 srv
drwxr-xr-x   2 root root  4096 2010-03-30 07:17 sys
drwxrwxrwt   9 root root  4096 2010-07-14 02:16 tmp
drwxr-xr-x  11 root root  4096 2010-07-11 05:49 usr
drwxr-xr-x  16 root root  4096 2010-07-13 01:49 var
lrwxrwxrwx   1 root root    30 2010-07-11 02:53 vmlinuz -> boot/vmlinuz-2.6.32-21-generic

/*CABE DESTACAR QUE SE PUEDE APRECIAR LA ESTRUCTURA DEL FILE SYSTEM DE NUESTRA RAIZ.

ENTONCES PODEMOS CONTINUAR*/


/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/


5 - )


montamos el arbol de directorios existentes en el cd-live al nuevo punto de arranque de nuestro sistema
operativo con la opcion --bind del comando mount el cual nos permite montar un sistema de ficheros (del
tipo dado) que se encuentra en el dispositivo.

/*También se puede montar un árbol de directorios ya visible en otro sitio*/

*** sudo mount --bind /dev /media/ubuntu/dev
*** sudo mount --bind /proc /media/ubuntu/proc
*** sudo mount --bind /sys /media/ubuntu/sys

/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/


6 - )

Convertimos esa partición en el directorio raíz del Sistema Operativo .
Cuidado a partir de ahora si HACES algo de más, porque se
reflejará en vuestro sistema real, no el del Live CD.


**** sudo chroot /media/ubuntu/

LUEGO que ejecutemos ese comando el pron de la consola se pondra de la siguiente manera :

root@ubuntu:/#


7-)


Finalmente .. se instala el FAMOSO GRUB  con el siguiente  comando y todo listo.

/* OJO EL DEVICE QUE ESTA DESPUES DEL grub-install OSEA EN MI CASO ES /dev/sda

POR QUE LA RAIZ DE MI SO ESTA EN sda y la carpeta /boot se encuentra en mi raiz,

PARA LOS QUE TENGAN LA carpeta /boot separada de la RAIZ O SI EN SU DEFECTO UDS TIENEN DOS DISCOS

DUROS PUEDE SER QUE LA RAIZ DE SU SO O LA PARTICION /boot ESTE EH hdaX donde la X puede ser

cualquier NUMERO  EN ESE CASO EL COMANDO SERA

grub-install /dev/hda

*/

*** grub-install /dev/sda


el mensaje que les dara este comando sera el siguiente

para ubuntu 10.04 es :

/*   Installation finished. No error reported.  */


para ubuntu 9.04 es :

/*

Searching for GRUB installation directory ... found: /boot/grub
Installing GRUB to /dev/sda as (hd0)...
Installation finished. No error reported.
This is the contents of the device map /boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.

(hd0) /dev/sda


*/


todo depende de la distrubucion que tengan y la version de la misma...
la logica es buscar algun msg como este

/*
Installation finished. No error reported.
*/



FIN

/*##########################################################*/



/*###################*/
/*##*/ NOTA : /*##*/
/*###################*/
PARA AQUELLAS PERSONAS QUE INSTALARON PRIMERO LINUX EN SUS MAQUINAS Y LUEGO WINDOWS, ES POSIBLE QUE
AL REINICAR ARRANQUE POR DEFECTO CON LINUX Y NO LES MUESTRE NUNGUN GRUB, YA QUE SE RECUPERO ELGRUB
QUE ANTES EXISTIA Y ANTES LINUX ESTABA SOLO.... ESTO PUEDE OCURRIR SOLO SI PASA ESTO,
INSTALAR LA APLICACION startupmanager Y PROBLEMA RESUELTO, REINICIEN Y TODO LISTO.


PARA LOS CURIOSOS REVISAR EL ARCHIVO /boot/grub/grub.cfg

                        y verificar el tiempo de espera del grub, puede ser que este en cero y la entrada principal por defecto es ubuntu




Se pueden descargar el archivo en 


en el caso del burg 

fdisk -l


les mostrará algo como esto:

    Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1       12971   104189526    7  HPFS/NTFS

/dev/sda2           12972       26272   106840252    f  W95 Ext'd (LBA)

/dev/sda3           25943       26272     2650693+  82  Linux swap / Solaris

/dev/sda4           26273       38913   101538832+  83  Linux

/dev/sda5           20322       25942    45150208   83  Linux


esto es para saber en que partición van a reinstalar de nuevo el burg, 
la cual debe ser una linea que diga *"Linux"*
En mi caso es *"/dev/sda4"*
y la montan en el directorio *"mnt"* provisionalmente de esta forma

mount /dev/sdb4 /mnt

luego montan también esto:

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys


ahora hacen esto.

chroot /mnt
update-burg
burg-install /dev/sda
burg-install --recheck /dev/sda  ¡¡ojo donde se escribe*/dev/sda,*  será sin el número, que en mi caso era  4!!

  

despues de esto, Ctrl+D para salir de chroot y desmonta haciendo esto:


umount /mnt/sys
umount /mnt/proc
umount /mnt/dev
umount /mnt


y por ultimo reiniciamos con

reboot



Bueno muchas gracias y espero esto le sirva de ayuda a alguien .
He aquí la pagina que me sirvió de ayuda 
 
Fuente : http://listas.canaima.softwarelibre.gob.ve/pipermail/soporte/2011-December/008094.html 

No hay comentarios:

Publicar un comentario