Anoche hice algo que te arrepientes por mucho tiempo, tomé un disco de la mesa y “mentalmente” seguro era el correcto lo puse en el portátil y reinicié, salí a tomarme un café para encontrarme con que tomé el disco de recuperación de la portátil (ni idea de por qué estaba allí sobre la mesa), borrando todo y apareciendo un gracioso logo de Windows Vista donde antes había Linux Debian.
¿Horror?, si, hubo mucho pavor en ese momento (era mi instalación Linux de trabajo), así que me tocó echar mano de las herramientas de recuperación para poder ganarle una al Windows.
Para esta información viene al rescate gpart (que no gparted, gpart!).
cuando ejecutamos:
al ejecutar testdisk aparece esta ventana:
Nos pregunta si deseamos crear un log (llamado testdisk.log) de todas nuestras actividades, por seguridad, indiquen que sí.
De segundo, nos mostrará los discos a revisar, en mi caso:
Seleccionamos el disco (flecha abajo), presionamos la tecla ENTER (INTRO, ustedes entienden .
Luego pregunta el tipo de partición:
Please select the partition table type, press Enter when done.
[Intel ] Intel/PC partition
[EFI GPT] EFI GPT partition map (Mac i386, some x86_64…)
[Mac ] Apple partition map
[None ] Non partitioned media
[Sun ] Sun Solaris partition
[XBox ] XBox partition
[Return ] Return to disk selection
Escojan “Intel” (no usé GPT en este disco).
En las opciones que salen, es donde vienen los cambios, escojan “[Geometry]“.
Luego, verán una pantalla como esta:
Acá es donde en [ Heads ] colocaremos los valores que recuperamos con gpart (en mi caso: Heads: 254 y Sectors: 63).
Presionen [OK] al terminar y ahora vamos al escaneo.
Presionen “Analyze”, luego de analizar (Quick Scan) ejecuten un “Deeper Scan” para revisar toda la superficie del disco.
Al terminar verán que encontró nuestra partición:
5 L Linux LVM 1862 42 31 19291 137 19 278904832
Presionen flecha derecha para cambiar los modos:
Modo “*” = Primaria, boot
Modo “P” = partición primaria
Modo “D” = partición borrada (útil si consigue una partición nueva que solapa una vieja)
Modo “L” = partición lógica
En algunos casos, testdisk no puede entender que es un Linux LVM, para ello podemos presionar la letra T (Change Type) y escogen el modo Linux LVM.
Nota mental: una partición linux clásica tiene un modo 0×83.
Esta partición que iba a recuperar era un grupo de volúmenes LVM, era lógica, verifico los datos con gpart (heads, sectors, sector de inicio y sector final, tamaño, etc).
Si todos los datos concuerdan, presiono ENTER y luego escojo “[ WRITE ]” para escribir los cambios al disco, deberán reiniciar (si es un disco atachado al computador) o desconectarlo (si es un USB storage) para que reconozca los cambios.
ya respiramos un poco más aliviados, ahora a recuperar el grupo de volúmenes.
Luego de activado el volumen, vgdisplay nos retornará información:
Lo bueno de herramientas como Testdisk o Gpart es que vienen incluídas en varias distribuciones LiveCD para recuperación de datos, como por ejemplo SystemRescueCD (del cual hice un artículo acá). Por desgracia no contaba ni con unidad de CD ni con mi SystemRescueUSB, pero testdisk y gpart son herramientas bastante pequeñas y se instalan en cualquier linux muy rápidamente.
Fuente:http://phenobarbital.wordpress.com/2012/01/16/linux-formateos-accidentales-en-discos-como-recuperarse/
¿Horror?, si, hubo mucho pavor en ese momento (era mi instalación Linux de trabajo), así que me tocó echar mano de las herramientas de recuperación para poder ganarle una al Windows.
Estado Inicial
Luego de la instalación automática y desasistida del equipo, terminé con dos particiones NTFS que ocupaban la totalidad del disco, como la primera había ocupado más de 10Gb, asumí que los datos de las primeras particiones (/boot, /root) estaría sumamente corrompidos, pero me preocupaba /HOME, que estaba en un volumen LVM, así tomé mis herramientas:- gpart
- testdisk
- lvm-tools
Inicio: obteniendo información de las particiones perdidas
Lo más importante, es saber toda la información de las particiones perdidas, entre esa información hay una muy importante, TESTDISK requiere saber con exactitud la geometría correcta del disco; sino, se las verá muy mal a la hora de recuperar el disco.Para esta información viene al rescate gpart (que no gparted, gpart!).
cuando ejecutamos:
gpart /dev/sdbDonde /dev/sdb es el disco duro que deseamos escanear, este devolverá información acerca de todas las particiones presentes en el disco.
Primary partition(1) type: 131(0x83)(Linux ext2 filesystem) size: 507mb #s(1038976) s(144224640-145263615) chs: (1023/254/63)-(1023/254/63)d (8977/145/1)-(9042/61/43)rComo ven, el disco fué formateado con una geometría de 254 heads (cabezales) y 63 sectores (números resaltados), anoten esto para utilizarlo con parted (modo rescue) o en mi caso, testdisk.
Segunda parte: ejecutando testdisk
Lo segundo que deben hacer es ejecutar testdisk, si no lo tienen pueden instalarlo (se llama: testdisk y está en los repositorios de Debian, Ubuntu y Fedora).al ejecutar testdisk aparece esta ventana:
Nos pregunta si deseamos crear un log (llamado testdisk.log) de todas nuestras actividades, por seguridad, indiquen que sí.
De segundo, nos mostrará los discos a revisar, en mi caso:
Select a media (use Arrow keys, then press Enter): Disk /dev/sda - 160 GB / 149 GiB - ATA SAMSUNG HM160HI Disk /dev/sdb - 160 GB / 149 GiB - Generic ExternalYa que el disco de 160Gb es un ATA Seagate que lo conecté por USB storage.
Seleccionamos el disco (flecha abajo), presionamos la tecla ENTER (INTRO, ustedes entienden .
Luego pregunta el tipo de partición:
Please select the partition table type, press Enter when done.
[Intel ] Intel/PC partition
[EFI GPT] EFI GPT partition map (Mac i386, some x86_64…)
[Mac ] Apple partition map
[None ] Non partitioned media
[Sun ] Sun Solaris partition
[XBox ] XBox partition
[Return ] Return to disk selection
Escojan “Intel” (no usé GPT en este disco).
En las opciones que salen, es donde vienen los cambios, escojan “[Geometry]“.
Luego, verán una pantalla como esta:
Acá es donde en [ Heads ] colocaremos los valores que recuperamos con gpart (en mi caso: Heads: 254 y Sectors: 63).
Presionen [OK] al terminar y ahora vamos al escaneo.
Presionen “Analyze”, luego de analizar (Quick Scan) ejecuten un “Deeper Scan” para revisar toda la superficie del disco.
Al terminar verán que encontró nuestra partición:
5 L Linux LVM 1862 42 31 19291 137 19 278904832
Presionen flecha derecha para cambiar los modos:
Modo “*” = Primaria, boot
Modo “P” = partición primaria
Modo “D” = partición borrada (útil si consigue una partición nueva que solapa una vieja)
Modo “L” = partición lógica
En algunos casos, testdisk no puede entender que es un Linux LVM, para ello podemos presionar la letra T (Change Type) y escogen el modo Linux LVM.
Nota mental: una partición linux clásica tiene un modo 0×83.
Esta partición que iba a recuperar era un grupo de volúmenes LVM, era lógica, verifico los datos con gpart (heads, sectors, sector de inicio y sector final, tamaño, etc).
Si todos los datos concuerdan, presiono ENTER y luego escojo “[ WRITE ]” para escribir los cambios al disco, deberán reiniciar (si es un disco atachado al computador) o desconectarlo (si es un USB storage) para que reconozca los cambios.
ya respiramos un poco más aliviados, ahora a recuperar el grupo de volúmenes.
Paso 3: Recuperar el grupo de volúmenes
Obviamente para este paso tu computador debe reconocer grupos de volúmenes (tener instalado el paquete lvm2), al volver a conectar el disco duro, ejecutamos el comando:pvscanEste buscará todos los grupos de volúmenes en todos los discos, encontrando este:
pvscan PV /dev/sdb5 VG VgCANTV lvm2 [132,99 GiB / 57,96 GiB free] Total: 1 [132,99 GiB] / in use: 1 [132,99 GiB] / in no VG: 0 [0 ]Entonces lo chequeamos (para verificar consistencia):
pvck -a /dev/sdb5 Found label on /dev/sdb5, sector 1, type=LVM2 001 Found text metadata area: offset=4096, size=192512Lo vemos con pvdisplay:
pvdisplay --- Physical volume --- PV Name /dev/sdb5 VG Name VgCANTV PV Size 132,99 GiB / not usable 4,00 MiB Allocatable yes PE Size 4,00 MiB Total PE 34045 Free PE 14837 Allocated PE 19208 PV UUID A3m31N-wy5p-0zMl-0T3q-Nx45-jQR3-1Rjc4QY lo activamos:
vgchange -a y VgCANTV 49 logical volume(s) in volume group "VgCANTV" now activeWow! 49 volúmenes (es donde tengo mis VMs de Xen de mi trabajo).
Luego de activado el volumen, vgdisplay nos retornará información:
vgdisplay --- Volume group --- VG Name VgCANTV System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 83 VG Access read/write VG Status resizable MAX LV 0 Cur LV 49 Open LV 1 Max PV 0 Cur PV 1 Act PV 1 VG Size 132,99 GiB PE Size 4,00 MiB Total PE 34045 Alloc PE / Size 19208 / 75,03 GiB Free PE / Size 14837 / 57,96 GiB VG UUID PhZqJE-44xs-F0tP-XAXr-s2jZ-LlON-5LBL0tAl tener su propio UUID el grupo de volúmenes (y sus particiones) ya pueden ser accedidas de manera usual.
Paso 4: montando y chequeando
Uno de los peligros de usar XFS es la corrupción de los descriptores, en mi caso no hubo problemas, antes de montar ejecutamos:xfs_check /dev/mapper/VgCANTV-volHOMEY chequeará cualquier detalle del Filesystem, en caso de necesitar reparación, ejecutamos:
xfs_repair /dev/mapper/VgCANTV-volHOMESi acaso hubo una pérdida de los logs de descriptores, pueden hacer que repare el sistema haciendo caso omiso de los logs y buscando los descriptores directamente del FS:
xfs_repair -L /dev/mapper/VgCANTV-volHOMEPor seguridad, le generamos un nuevo UUID a la partición XFS:
xfs_admin -U generate /dev/mapper/VgCANTV-volHOMEY por último ya podemos montarla:
mount -t xfs /dev/mapper/VgCANTV-volHOME /media/respaldo/homeRespaldamos nuestros datos y ¡listo!, ya nos recuperamos!.
Lo bueno de herramientas como Testdisk o Gpart es que vienen incluídas en varias distribuciones LiveCD para recuperación de datos, como por ejemplo SystemRescueCD (del cual hice un artículo acá). Por desgracia no contaba ni con unidad de CD ni con mi SystemRescueUSB, pero testdisk y gpart son herramientas bastante pequeñas y se instalan en cualquier linux muy rápidamente.
Fuente:http://phenobarbital.wordpress.com/2012/01/16/linux-formateos-accidentales-en-discos-como-recuperarse/
No hay comentarios:
Publicar un comentario