¿Cómo recuperar datos de una tarjeta SD defectuosa?

23

Tengo una tarjeta SD de 4GB con algunas fotos familiares que necesito recuperar. Cuando inserto la tarjeta en mi lector de tarjetas, aparece como un dispositivo desconocido de 32 MB (como /dev/sde) y no se puede montar. Cuando se inserta de nuevo en la cámara (una Nikon D60), dice que las tarjetas deben formatearse (al igual que insertarlas en una máquina con Windows). Quiero recuperar todas las imágenes de la tarjeta (había otras antes de las fotos familiares) porque no sé cuántas tomé o su tamaño exacto (pero creo que todas eran JPEG). La tarjeta debe formatearse como un sistema de archivos FAT32.

¿Qué utilidades de Linux o Unix están disponibles para recuperar los archivos? ¿Puedo hacerlo yo mismo o necesito buscar ayuda profesional?

Editar: Parece que mi lector de tarjetas ha dañado la tarjeta de alguna manera, haciéndola ilegible e indeformable. Cuando verifiqué otra tarjeta que era exactamente la misma (salvo que no hubiera archivos), "arruinó" la segunda. Me gustaría volver a usar la segunda tarjeta, entonces, ¿hay una herramienta para formatear una tarjeta dañada que no sabe (o no puede informar correctamente) qué tan grande es?

n0pe
fuente

Respuestas:

29

Primero, según su experiencia con la segunda tarjeta, parece que su lector está dañado y ahora daña las tarjetas que inserta en él. Deje de usar ese lector de inmediato e intente recuperar la tarjeta con otro lector. Si sus datos son valiosos, intente obtener un lector de marca con mejor calidad que uno de bajo precio.

Si la tarjeta es simplemente ilegible en parte y no completamente ilegible, primero intente copiar lo que pueda de la tarjeta a un archivo de imagen. No lo use ddpara esto, ya que dejará de leer el primer error. Use herramientas como dd_rescueo ddrescue. Ambas herramientas intentan capturar la mayor cantidad de datos posible del disco. Ejemplo de uso ( /dev/sdcsiendo el dispositivo correspondiente a la tarjeta; si no sabe cuál es, ejecute cat /proc/partitionsy elija el que parece tener el tamaño correcto):

ddrescue -dr3 /dev/sdc card.image logfile

Como parece que la estructura del sistema de archivos está dañada (sus sistemas operativos ofrecen formatear el disco porque no ven un sistema de archivos válido), deberá intentar recuperar los archivos individualmente. Afortunadamente, los archivos de imagen comienzan con un encabezado reconocible, y hay muchas herramientas de talla existentes que reconocen imágenes: Foremost , MagicRescue , PhotoRec (de los creadores de TestDisk ), RecoverJPEG , ...

La mayoría de estas herramientas están disponibles en distribuciones típicas de Unix. Pero si lo prefiere, puede ejecutar una distribución de propósito especial u otro CD en vivo que incluya herramientas de recuperación como SysRescueCD , Knoppix , CAINE ...

Gilles 'SO- deja de ser malvado'
fuente
Creo que la mayoría de mis problemas provienen de que las tarjetas se reconocen como solo 32 MB, cuando deberían ser de 4 GB. Y no tengo forma de decir cuáles son los cilindros, culatas y sectores de bajo nivel.
2
@Tyler: si el hardware no reconoce su tarjeta en el tamaño correcto, reemplace el lector de inmediato. Si intentó copiar la imagen y la copia se detuvo debido a errores después de 32 MB, intente nuevamente con una herramienta como ddrescue. No necesita saber nada sobre cilindros / culatas / sectores.
Gilles 'SO- deja de ser malvado'
¿Qué hace la opción -dr3? Estoy tratando de recuperarme de una tarjeta SD pero esa dosis no aumenta. Me sale lo siguiente: error de lectura no alineado. ¿Es correcto el tamaño del sector?
user3236841
En las páginas de manual, la -dr3opción significa -d, que significa "usar acceso directo al disco", omitiendo cualquier caché del núcleo del contenido del disco, y -r3, lo que significa volver a intentar la lectura 3 veces si obtiene un error por un sector defectuoso.
Sean
9

PhotoRec de http://www.cgsecurity.org/ - libre, de código abierto, fácil de usar. Acabo de recuperar un montón de fotos y videos familiares de una tarjeta SD corrupta. Simplemente descomprímalo en una carpeta, ejecute el archivo y apúntelo a la unidad.

usuario36649
fuente
8

Recomiendo TestDisk . Lo he usado con éxito para recuperar archivos de discos duros corruptos. Normalmente uso una distribución como TRK o SystemRescueCd .

agn
fuente
6

No ha detallado cómo se perdieron los datos. Si es una eliminación lógica, y el dispositivo no ha visto mucha escritura, las posibilidades de recuperar datos son buenas: el consejo obvio es ir a TestDisk y Photorec . Por supuesto, la recomendación tradicional: proteger contra escritura el dispositivo original, de todos modos, exponerlo a la menor interacción posible. Lo mejor de todo ddes que tiene un soporte diferente, desconéctelo y trabaje en el archivo de imagen. Si, por otro lado, "malo" en el tema significa que está físicamente arruinado, las cosas se ponen más difíciles, pero debería intentarlo de todos modos, porque generalmente una porción menor de los bloques se vuelve ilegible. Especialmente en SD, que tienen una reputación de muy alta resistencia.

user495100
fuente
No estoy seguro de cómo , pero la tarjeta no parece estar físicamente dañada. Y no estoy muy familiarizado con dd, entonces, ¿cómo podría recuperar la imagen de la tarjeta? ¿Qué necesitaría específicamente hacer con la imagen?
Intenta encontrar una manera confiable de conectar el SD a una PC. Suponga que administra y el dispositivo sin procesar se asigna al dispositivo de bloque / dev / sda (use dmesg para conocer su nombre). Luego haga dd if=/dev/sda of=/mnt/hda1/image.dd bs=1Mdonde / mnt / hda1 es el punto de montaje de algún otro soporte lo suficientemente grande. Luego desconecte el sd, haga una copia de image.dd y trabaje en este último para que no tenga que volver a enchufar el SD. Consulte la guía paso a paso de TestDisk en su página de inicio. Con suerte, por lo que dices, parece que solo tienes que restaurar la tabla de partición / mbr. Buena suerte.
user495100
1
@ Tyler: No lo use dd, ya que se detiene en el primer error. Usa algo como ddrescue.
Gilles 'SO- deja de ser malvado'
2

Usé photorec que viene en el paquete testdisk. Me funcionó bien para recuperar fotos de un microsd sandisk que fue dañado por mi teléfono.

Samue
fuente
1
¿Puede, al menos, proporcionar enlaces y documentación para completar un poco su respuesta?
HalosGhost
PhotoRec funcionó para mí. Mi tarjeta SD perdió el sistema de archivos fat32 y no se estaba montando. PhotoRec me ayudó a recuperar la mayor parte.
Chetan Bhargava