jueves, 5 de diciembre de 2013

Recuperación de datos

Hace un tiempo, acepté la tarea de tratar de recuperar información de un disco, al que luego de un problema con el suministro eléctrico, el usuario le instaló el sistema de fábrica que viene en una partición a parte, dedicada especialmente para la "recuperación".
Lo que más le importaban eran las fotografías que había perdido.
Este es un trabajo que suelo hacer sobre memorias extraíbles de cámaras fotográficas o pendrives, pero ahora me tocaba sobre un HDD; por lo que tener un servidor NFS en casa me viene al pelo para transferir los datos de recuperación.
Repaso los hechos:
Inicio la computadora afectada con un live cd y monto el sistema de archivos en red (previa instalación de paquetes - ver post anterior).
sudo mount -t nfs -o nfsvers=4 ip_servidor_NFS:/directorio/compartido ~/Público
Lo correcto sería montar como sólo lectura la partición a recuperar, para evitar escrituras accidentales y asegurarme de que sea la partición afectada
01 sudo mkdir /mnt/recuperame
02 sudo mount -t ntfs-3g -o ro /dev/sda1 /mnt/recuperame
si es la partición la podemos desmontar
01 sudo umount /mnt/recuperame
02 sudo rm /mnt/recuperame
y realizar una copia bit a bit de dicha partición en el servidor
01 dd if=/dev/sda1 of=~/Público/resguardo.dd
Este, es el momento perfecto para prepararse un mate, hacer compras, etc. Juro que va demorar bastante.
Bueno... Siempre que llovió, paró. Y esto en algún momento debería terminar.
Ahora puedo apagar la computadora afectada y trabajar en la mía sobre la imagen creada. Para esto necesito tener instalado el paquete testdisk y ejecutar:

sudo photorec resguardo.dd

 Elijo el dispositivo.
 también el tipo de partición; en este caso FAT y que busque en todo el disco (whole disk)

 selecciono la carpeta donde quedará el resguardo y en un instante comienza photorec a trabajar.



Quedando un montón de directorios del tipo recup_dir.1, recup_dir.2, etc.
Los archivos y carpetas no recuperan su nombre original, por lo que hay que seleccionar a mano lo que es basura y lo que sirve luego de recuperar todo, o me queda la posibilidad de hacer un script para ayudarme, pero esto último lo muestro en otro post.