2 votos

¿Cómo puedo clonar una tarjeta SD adoptada?

Adopté una tarjeta SD como memoria interna y un día dejó de funcionar de repente.

Con la tremenda ayuda del miembro @alecxs pude hacer una copia img de la misma y navegar por los archivos en ella. Aquí es algo de lo básico de cómo se hizo.

No estoy seguro de por qué falló en el teléfono ya que si era un problema físico con la tarjeta SD entonces no debería NO haber sido posible leerla o descifrarla?

En cualquier caso, tengo otra tarjeta SD (nueva) y me gustaría clonar la antigua en ella para poder empezar a usarla efectivamente como si fuera la antigua... básicamente que todo quede como estaba antes del fallo de la tarjeta SD.

¿Hay alguna forma de hacerlo? ¿Cómo?

Soy capaz de ver mis fotos que es un alivio ENORME pero mi preocupación ahora es los datos de la aplicación que es inviable a menos que se pone de nuevo en el teléfono y se abrió con su aplicación.

2 votos

ddrescue <old card> <new card> . Hecho. Pero si la lectura de los sectores falla debido a la corrupción en grandes áreas, el sistema de archivos no se puede montar en Android. Tampoco funcionará si olvidaste la tarjeta en Android.

0 votos

@IrfanLatif Gracias. ¿Podría dar un ejemplo para <old card> <new card> ? ¿Y qué quiere decir con "olvidó la tarjeta en Android?

2 votos

Cómo utilizarlo ddrescue : unix.stackexchange.com/a/14577/262728 . Olvido de tarjeta SD: Android.stackexchange.com/preguntas/181476

0voto

alecxs Puntos 29

Pruebe lo siguiente

  • primero copiar sd.img a la nueva tarjeta MicroSD (terminará sin éxito "error de escritura, no hay suficiente espacio")

  • crear otro sd2.img a partir de la nueva tarjeta MicroSD (la que terminó sin éxito, sólo necesitamos sd2.img en bruto con el tamaño correcto)

  • ejecute kpartx para asignar sd.img a /dev/mapper/loop1p1, /dev/mapper/loop1p2 y sd2.img a /dev/mapper/loop2p1, /dev/mapper/loop2p2 (puede variar)

  • crear dos nuevos dispositivos de bloque para /dev/mapper/loop1p2 y /dev/mapper/loop2p2 (ver enlace en su pregunta)

  • ahora vamos a suponer que /dev/mapper/loop1p2 es /dev/mapper/crypt1 (= sd.img) y /dev/mapper/loop2p2 es /dev/mapper/crypt2 (= sd2.img)

  • crypt1 debería poder montarse como partición ext4 en cualquier punto de montaje (es decir, su antigua tarjeta MicroSD)

  • crypt2 está probablemente roto debido a su menor tamaño y debe ser formateado con mke2fs

    mke2fs -t ext4 /dev/mapper/crypt2

  • ahora crypt2 debe ser montable como ext4 también, montar a otro punto de montaje

  • A continuación, copie todos los archivos de un punto de montaje a otro. asegúrese de conservar los permisos de secontext, xattrs, uid y archivos. esto puede hacerse con busybox cp -ac o tar --selinux --xattrs -p

Estoy en el móvil y ocupado hoy, voy a mejorar esa respuesta más tarde. por cierto no estoy seguro de que eso es lo que funciona en absoluto (la parte dmsetup)

buena suerte

0 votos

Los comentarios no son para extender la discusión; esta conversación ha sido movido al chat .

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X