nanddump vs arranque rápido

Tengo dos teléfonos idénticos. En uno de ellos logré corromper la partición del sistema y no arranca. Tengo fastboot, root (en el que arranca), pero no tengo ClockworkMod --- mi teléfono no es compatible. En cambio, tengo la recuperación de proveedores más inútil del mundo, que admite update.zip y nada más.

Estoy tratando de copiar la partición del sistema del teléfono que funciona al que no funciona a través de fastboot. Pero no puedo actualizar con éxito la partición. Siempre obtengo un error, y el único mensaje es 'fallo de escritura flash'. He intentado borrarlo primero.

Mi sospecha es que de alguna manera no estoy tomando correctamente la imagen del teléfono que funciona y los datos OOB son incorrectos.

Estoy usando nanddump de busybox para hacer esto:

nanddump -f /sdcard/backup/mtd7 /dev/mtd/mtd7

¿Es esto correcto? La imagen resultante es más grande que una imagen tomada con dd, por lo que parece contener los datos OOB, pero fastboot no los actualizará. ¿Fastboot requiere imágenes en algún formato exótico?

Por curiosidad, ¿cuánta RAM hay en el dispositivo que no arranca y qué tan grande es la imagen del sistema que obtienes de nanddump? Sé que en el Kindle Fire, por ejemplo, flashear la partición del sistema puede ser problemático porque una imagen extraída a mano es demasiado grande para caber en la RAM, por lo que fastboot se resiste cuando intentas flashearla (no tengo idea si ese es el caso aquí, solo un disparo en la oscuridad).
...buena pregunta. MemTotal de /proc/cpuinfo muestra 152784kB y la imagen flash es de 129MB, por lo que podría estar sin memoria. OTOH, los diagnósticos mínimos que recibo dicen que se está transfiriendo correctamente y solo falla cuando intenta escribirlo.
¿Qué dispositivo tiene usted?
Uno de estos: flickr.com/photos/elurstoidi/4626364634/in/… El modelo real informado varía dependiendo de dónde mires. Creo que es vagamente Z71ish por dentro. Si quiero ClockworkMod, ¡tendría que portarlo yo mismo!

Respuestas (2)

Tome la imagen del teléfono que funciona con el siguiente código

  • Primero averigüe el bloque dev de la partición del sistema

cat /proc/mounts

  • Busque las particiones del sistema y anote la partición /dev/block/ correspondiente
  • Por ejemplo, para mi teléfono es /dev/block/mmcblk0p12

  • Ahora haga la copia exacta de la partición usando el comando dd

dd if=/dev/block/***** of=/sdcard/system.img

  • Copie este system.img de su teléfono a la PC
  • Conecta tu otro teléfono en modo fastboot
  • Ejecute el siguiente comando

fastboot flash system <path-to-system.img>

Según el dispositivo que tenga, la versión de Android que ejecute y el fabricante del teléfono, es posible que no pueda hacer lo que desea. Es poco probable que la copia de la partición / system funcione de todos modos, ya que su dispositivo de trabajo ya ha asignado el ESN a los archivos cruciales del sistema y es posible que no se le permita flashear debido a la verificación de dmverity. Lo mejor que puede hacer es encontrar una imagen de stock de la ROM de los dispositivos y usar el programa de flasheo de su fabricante (es decir, Samsung usa Odin, Sony tiene su programa, etc.), o volcar un OTA update.zip y flashearlo en su recuperación de existencias.