Recuperación de ficheros borrados en la memoria interna del móvil

Una MicroSD en mal estado me ha liado una buena. En un alarde de valentía usé la opción de «mover» todas las fotos que estaban en la memoria interna hacia la tarjeta de memoria, con un resultado desastroso: no sólo no se grabaron en la tarjeta sino que se borraron de la memoria.

El móvil es un Note 3 y estoy usando Linux Mint. Necesitaremos root en el teléfono y busybox instalado. En el ordenador nos basta con adb, netcat y photorec, ya que la solución pasa por intentar sacar un volcado de la memoria interna hacia el ordenador.

Conectamos el móvil por USB al ordenador, con la opción de «depuración USB activada», y realizamos los siguientes pasos en un terminal :

$ adb forward tcp:5555 tcp:5555
$ adb shell
$ su (tendremos que aceptar la petición de superusuario en el móvil)
$ /system/bin/busybox nc -l -p 5555 -e /system/bin/busybox dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata (el dispositivo varía de un móvil a otro)

Dejamos este terminal a la espera, y en otro hacemos lo siguiente :

$ adb forward tcp:5555 tcp:5555
$  nc 127.0.0.1 5555 | pv -i 0.5 > memory_dump.raw

Esperamos varias horas (dependiendo del tamaño de la memoria) a que se genere el fichero con el volcado en nuestro disco duro, sobre el cual ya podremos ejecutar photorec y ver si hemos tenido suerte.

$ photorec memory_dump.raw

En mi caso parece que ha habido suerte. He estado a punto de perder varios cientos de fotos muy importantes

recovery