Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Tutorial:  Desempaquetar y empaquetar ROMs System.img y boot.img.
#1
Saludos amigos, antes de nada comentaros dos cosas:
  • 1º No me hago responsable de las posibles pifias que se puedan hacer. El método funciona, pero alguien podría tocar algún archivo de la ROM que no debiera y quedarse la tablet bloqueada.
  • 2º Evidentemente las herramientas no las he hecho yo, méritos a sus autores.

-Herramientas necesarias:

Herramientas para Windows (desempaquetar system.img para hacer un update.zip):
  • Creamos una carpeta en la raiz de C, vamos a llamarle cocina, y metemos los tres programas dentro.
    DESCARGA

  • Dentro de la carpeta anterior creamos otra, la llamamos ImgRepacker y metemos los archivos que contiene el zip dentro de ImgRepacker.
    (parece que el enlace está caído, bajarlo de aquí DESCARGA)

Herramientas para Linux (para hacer una custom rom):
  • Introducimos la carpeta ext4_utils dentro de la carpeta personal.
    DESCARGA

-Trabajar desde Windows:
  • 1º Copiamos la rom original y la pegamos dentro de la carpeta ImgRepacker.
  • 2º Ejecutamos runner.bat
  • 3º Con el botón izquierdo del ratón arrastramos la rom dentro de la ventana de runner.bat, damos intro.
  • 4º Nos pedirá que pongamos opciones, ponemos /noiso, damos intro, se pondrá a trabajar.
  • 5º Cuando haya acabado nos hará unas preguntas, no hacemos caso, damos tres veces a intro y se cerrará la ventana.
  • 6º Se habrá creado una carpeta nueva, la abrimos y en su interior veremos varios archivos, entre ellos está system.fex, lo sacamos a la carpeta cocina y le cambiamos la extensión a .img.
  • 7º Doble click en 1.bat. Esto nos creara otra imagen en la misma carpeta. Tranquilos, tarda un poco, a mi unos 20 minutos, y ocupa unos 100 MB mas que el system.img.
  • 8º Creamos una carpeta que se llame ROM_MOD
  • 9º Abrimos ext2explore, FIle --> open image, buscamos la nueva imagen creada y aparecerá en el panel de la izquierda, le damos doble click y en el panel de la derecha aparecerán todos los archivos. En el panel de la derecha click botón derecho, save, buscamos la carpeta ROM_MOD y ya está, el system.img desempaquetado listo para modificar los archivos necesarios y hacer un update.zip.

-Trabajar desde Linux:
  • 1º Metemos la capeta ya descomprimida de ext4_utils en nuestra carpeta personal (si no lo habíamos hecho antes)
  • 2º abrimos una ventana del terminal (control + alt + t)
  • 3º Escribimos cd ext4_utils (para tener activa esa carpeta)
  • 4º Escribimos make all (para compilar los archivos necesarios)
  • 5º Escribimos los siguientes comandos (nos pedirá clave de root)
    sudo cp make_ext4fs /bin/
    sudo cp simg2img /bin/
    sudo cp mkuserimg.sh /bin/

  • 6º Necesitamos el system.img, por eso seguimos los pasos para conseguirlo desde windows y una vez obtenido lo copiamos dentro de la carpeta ext4_utils
  • 7º En la ventana del terminal tiene que seguir activa ext4_utils, escribimos ./simg2img system.img system.img.raw intro
  • mkdir tmp intro
  • sudo mount -t ext4 -o loop system.img.raw tmp/ intro
  • 10º Con todos estos comandos se nos habrá creado una carpeta tmp con todos los archivos que componen system.img, pero como se ha creado con la contraseña de superusuario no nos va a dejar manejarlos a nuestro antojo, escribimos en el terminal gksu nautilus tmp& y se nos abrirá otra ventana con todos los archivos y con previlegios de superusuario.
  • 11º Modificamos los archivos que tengamos que modificar.
  • 12º Una vez terminada la modificación abrimos el terminal y nos dirigimos a ext4_utils (como ya se ha explicado antes)
  • 13º escribimos sudo ./make_ext4fs -s -l 256M -a system system.mod.img tmp/ intro
    (Nota: el 256M son los megas de memoria total de la partición system,
    hay que poner el conforme vuestro terminal, si no, os quedaréis con 256 MB de system,
    si ponéis de mas, no arrancará. ojo con esto. si no la sabéis mirar que pesa la carpeta sistem y meter algunos megas mas, no muchos.)
  • 14º sudo umount tmp intro
  • 15º rm -rf tmp intro. Estos dos comandos anteriores son para eliminar la carpeta tmp.
    (Ya tenemos el system.img modificado, es el system.mod.img)
Si falla algo y tenéis un SO de 64 Bits probar instalando las siguientes librerias:
Código:
sudo apt-get install g++ g++-4.6 g++-4.6-multilib g++-multilib gcc gcc-4.6 gcc-4.6-multilib
 gcc-multilib lib32asound2 lib32bz2-1.0 lib32bz2-dev lib32gcc1 lib32gomp1
 lib32ncurses5 lib32nss-mdns lib32quadmath0 lib32stdc++6 lib32tinfo5 lib32z1
 lib32z1-dev libbz2-dev libc-dev-bin libc6-dev libc6-dev-i386 libc6-i386
 libgomp1 libquadmath0 libstdc++6-4.6-dev linux-libc-dev manpages-dev
 zlib1g-dev libc6

-TUTORIAL ABRIR, MODIFICAR, CERRAR BOOT.IMG

Antes de nada informar que las herramientas no son mías, méritos a sus autores. El trabajo se tiene que hacer bajo linux. No me hago responsable de que se modifiquen cosas que no se debieran y la tablet se quede bloqueada.
  • 1º Bajar las herramientas DESCARGA y descomprimir.
  • 2º poner el boot.img que queremos modificar dentro de esta carpeta.
  • 3º Abrir un terminal y escribir mkdir -p unpack
  • tools/unpackbootimg -i boot.img -o unpack
  • mkdir -p unpack/boot.img-ramdisk
  • cd unpack/boot.img-ramdisk
  • gzip -dc ../boot.img-ramdisk.gz | cpio -i
  • cd ../../
  • 9º Se nos habrá creado una carpeta llamada unpack. Dentro de ella hay una carpeta llamada boot.img-ramdisk (dentro están los archivos del boot.img para modificar lo que queramos) también hay un archivo llamado boot.img.zImage, éste es el Kernel. Los demás archivos no se tocan.
  • 10º Una vez hecho las modificaciones escribimos en el terminal tools/mkbootfs unpack/boot.img-ramdisk | gzip > unpack/boot.img-ramdisk.gz
  • 11º tools/mkbootimg --kernel unpack/boot.img-zImage --ramdisk unpack/boot.img-ramdisk.gz -o boot.img-repack --base `cat unpack/boot.img-base`
  • 12º Dentro de la carpeta boot-tools tendremos ahora un archivo llamado boot.img-repack ese es nuestro boot.img modificado, se renombra y ya está.

-PARA EMPAQUETAR LA ROM ENTERA VOLVEMOS A WINDOWS
  • 1º Dentro de Windows ponemos el system.img  y boot.img dentro de la carpeta que se nos creó al desmontar la rom original y los renombramos .fex.
  • 2º Ejecutamos runner.bat
  • 3º Click botón izquierdo sobre esa carpeta y arrastramos a la ventana de runner .bat
  • 4º Damos a intro y nos pedirá opciones, ponemos /noiso y se pondrá a trabajar, cuando finalice nos hará unas preguntas, no hacemos caso, tres veces intro y se cerrará la ventana.
  • 5º Ya está, la rom original que teníamos ahí ahora será la modificada y se habrá creado otra, con el mismo nombre pero acabada en bak que es una copia de seguridad de la rom original.
Responder
#2
Triste 
(14-03-2021, 21:35)chujalt escribió: Saludos amigos, antes de nada comentaros dos cosas:
  • 1º No me hago responsable de las posibles pifias que se puedan hacer. El método funciona, pero alguien podría tocar algún archivo de la ROM que no debiera y quedarse la tablet bloqueada.
  • 2º Evidentemente las herramientas no las he hecho yo, méritos a sus autores.

-Herramientas necesarias:

Herramientas para Windows (desempaquetar system.img para hacer un update.zip):
  • Creamos una carpeta en la raiz de C, vamos a llamarle cocina, y metemos los tres programas dentro.
    DESCARGA

  • Dentro de la carpeta anterior creamos otra, la llamamos ImgRepacker y metemos los archivos que contiene el zip dentro de ImgRepacker.
    (parece que el enlace está caído, bajarlo de aquí DESCARGA)

Herramientas para Linux (para hacer una custom rom):
  • Introducimos la carpeta ext4_utils dentro de la carpeta personal.
    DESCARGA

-Trabajar desde Windows:
  • 1º Copiamos la rom original y la pegamos dentro de la carpeta ImgRepacker.
  • 2º Ejecutamos runner.bat
  • 3º Con el botón izquierdo del ratón arrastramos la rom dentro de la ventana de runner.bat, damos intro.
  • 4º Nos pedirá que pongamos opciones, ponemos /noiso, damos intro, se pondrá a trabajar.
  • 5º Cuando haya acabado nos hará unas preguntas, no hacemos caso, damos tres veces a intro y se cerrará la ventana.
  • 6º Se habrá creado una carpeta nueva, la abrimos y en su interior veremos varios archivos, entre ellos está system.fex, lo sacamos a la carpeta cocina y le cambiamos la extensión a .img.
  • 7º Doble click en 1.bat. Esto nos creara otra imagen en la misma carpeta. Tranquilos, tarda un poco, a mi unos 20 minutos, y ocupa unos 100 MB mas que el system.img.
  • 8º Creamos una carpeta que se llame ROM_MOD
  • 9º Abrimos ext2explore, FIle --> open image, buscamos la nueva imagen creada y aparecerá en el panel de la izquierda, le damos doble click y en el panel de la derecha aparecerán todos los archivos. En el panel de la derecha click botón derecho, save, buscamos la carpeta ROM_MOD y ya está, el system.img desempaquetado listo para modificar los archivos necesarios y hacer un update.zip.

-Trabajar desde Linux:
  • 1º Metemos la capeta ya descomprimida de ext4_utils en nuestra carpeta personal (si no lo habíamos hecho antes)
  • 2º abrimos una ventana del terminal (control + alt + t)
  • 3º Escribimos cd ext4_utils (para tener activa esa carpeta)
  • 4º Escribimos make all (para compilar los archivos necesarios)
  • 5º Escribimos los siguientes comandos (nos pedirá clave de root)
    sudo cp make_ext4fs /bin/
    sudo cp simg2img /bin/
    sudo cp mkuserimg.sh /bin/

  • 6º Necesitamos el system.img, por eso seguimos los pasos para conseguirlo desde windows y una vez obtenido lo copiamos dentro de la carpeta ext4_utils
  • 7º En la ventana del terminal tiene que seguir activa ext4_utils, escribimos ./simg2img system.img system.img.raw intro
  • mkdir tmp intro
  • sudo mount -t ext4 -o loop system.img.raw tmp/ intro
  • 10º Con todos estos comandos se nos habrá creado una carpeta tmp con todos los archivos que componen system.img, pero como se ha creado con la contraseña de superusuario no nos va a dejar manejarlos a nuestro antojo, escribimos en el terminal gksu nautilus tmp& y se nos abrirá otra ventana con todos los archivos y con previlegios de superusuario.
  • 11º Modificamos los archivos que tengamos que modificar.
  • 12º Una vez terminada la modificación abrimos el terminal y nos dirigimos a ext4_utils (como ya se ha explicado antes)
  • 13º escribimos sudo ./make_ext4fs -s -l 256M -a system system.mod.img tmp/ intro
    (Nota: el 256M son los megas de memoria total de la partición system,
    hay que poner el conforme vuestro terminal, si no, os quedaréis con 256 MB de system,
    si ponéis de mas, no arrancará. ojo con esto. si no la sabéis mirar que pesa la carpeta sistem y meter algunos megas mas, no muchos.)
  • 14º sudo umount tmp intro
  • 15º rm -rf tmp intro. Estos dos comandos anteriores son para eliminar la carpeta tmp.
    (Ya tenemos el system.img modificado, es el system.mod.img)
Si falla algo y tenéis un SO de 64 Bits probar instalando las siguientes librerias:
Código:
sudo apt-get install g++ g++-4.6 g++-4.6-multilib g++-multilib gcc gcc-4.6 gcc-4.6-multilib
 gcc-multilib lib32asound2 lib32bz2-1.0 lib32bz2-dev lib32gcc1 lib32gomp1
 lib32ncurses5 lib32nss-mdns lib32quadmath0 lib32stdc++6 lib32tinfo5 lib32z1
 lib32z1-dev libbz2-dev libc-dev-bin libc6-dev libc6-dev-i386 libc6-i386
 libgomp1 libquadmath0 libstdc++6-4.6-dev linux-libc-dev manpages-dev
 zlib1g-dev libc6

-TUTORIAL ABRIR, MODIFICAR, CERRAR BOOT.IMG

Antes de nada informar que las herramientas no son mías, méritos a sus autores. El trabajo se tiene que hacer bajo linux. No me hago responsable de que se modifiquen cosas que no se debieran y la tablet se quede bloqueada.
  • 1º Bajar las herramientas DESCARGA y descomprimir.
  • 2º poner el boot.img que queremos modificar dentro de esta carpeta.
  • 3º Abrir un terminal y escribir mkdir -p unpack
  • tools/unpackbootimg -i boot.img -o unpack
  • mkdir -p unpack/boot.img-ramdisk
  • cd unpack/boot.img-ramdisk
  • gzip -dc ../boot.img-ramdisk.gz | cpio -i
  • cd ../../
  • 9º Se nos habrá creado una carpeta llamada unpack. Dentro de ella hay una carpeta llamada boot.img-ramdisk (dentro están los archivos del boot.img para modificar lo que queramos) también hay un archivo llamado boot.img.zImage, éste es el Kernel. Los demás archivos no se tocan.
  • 10º Una vez hecho las modificaciones escribimos en el terminal tools/mkbootfs unpack/boot.img-ramdisk | gzip > unpack/boot.img-ramdisk.gz
  • 11º tools/mkbootimg --kernel unpack/boot.img-zImage --ramdisk unpack/boot.img-ramdisk.gz -o boot.img-repack --base `cat unpack/boot.img-base`
  • 12º Dentro de la carpeta boot-tools tendremos ahora un archivo llamado boot.img-repack ese es nuestro boot.img modificado, se renombra y ya está.

-PARA EMPAQUETAR LA ROM ENTERA VOLVEMOS A WINDOWS
  • 1º Dentro de Windows ponemos el system.img  y boot.img dentro de la carpeta que se nos creó al desmontar la rom original y los renombramos .fex.
  • 2º Ejecutamos runner.bat
  • 3º Click botón izquierdo sobre esa carpeta y arrastramos a la ventana de runner .bat
  • 4º Damos a intro y nos pedirá opciones, ponemos /noiso y se pondrá a trabajar, cuando finalice nos hará unas preguntas, no hacemos caso, tres veces intro y se cerrará la ventana.
  • 5º Ya está, la rom original que teníamos ahí ahora será la modificada y se habrá creado otra, con el mismo nombre pero acabada en bak que es una copia de seguridad de la rom original.

Amigo, al rar que compartes le faltan archivos, por ejemplo el 1.bat que mencionas no esta por ninguna parte, asique no puedo seguir el tuto, me quedo en el principio
Responder
#3
Saludos.

Como el tuto tiene algún tiempo, es posible que algunos enlaces estén caídos.

Prueba a bajártelo de AQUI
Responder
#4
Tengo un problema con la radio Eonon GA2160 android marshmallow 6.0.1, la pantalla táctil no funciona (mala configuración) de la 1/2 para abajo y el menú externo tampoco, todo lo demas funciona, utilizando un ratón o un teclado me puedo mover por los menús de la pantalla y funciona todo.
No soy capaz de conectarlo mediante ADB al pórtatil, (lo intenté con 3 diferentes y SO XP, Windows 7 y 11).
Por lo que llevo mirado son los ficheros de configuración.
Aunque instalo todo de nuevo, incluso una rom customizada no hay forma.
Parece que los ficheros de configuración de la pantalla táctil se cargan al principio (con el bootloader?).
Deduzco que esos ficheros de configuración deben estar en hmcu.img y dmcu.img, (no soy capaz de instalarlos, ni ver su contenido).
https://forum.xda-developers.com/t/allwi...t-85595893
Quisiera ver el contenido de esos archivos.
Aunque cambie de rom, la mala configuración y pequeñas modificaciones que hago en la configuración de la pantalla táctil quedan, con lo que deduzco que el problema está en la carga inicial al arrancar.
¿Con que programa podria ver el contenido de esos ficheros hmcu.img y dmcu.img ?
lo intenté con ext4_unpacker_exe.zip y ext2explore-2.2.71.zip , sin éxito.

¿cuales son los ficheros de configuración de la pantalla táctil?
gracias

Misma pregunta sobre los distintos formatos de los archivos de la ROM
tengo los archivos de instalación en formato:

80e9638e-9b57-11e6-ae60-17eb46db23b3
81cb828c-9b57-11e6-ad2a-df6786178d62
827ba428-9b57-11e6-8dfb-37398ea70e52.0
827ba428-9b57-11e6-8dfb-37398ea70e52.1
827ba428-9b57-11e6-8dfb-37398ea70e52.2

He buscado por internet información y apenas encuentro.

sólo consigo desempaquetar el 827ba428-9b57-11e6-8dfb-37398ea70e52.0 con 7-zip
¿De que forma y con que aplicaciones se puede ver el contenido de esos ficheros?

el fichero 80e9638e-9b57-11e6-ae60-17eb46db23b3 corresponde a los hmcu.img y dmcu.img
gracias
Responder
#5
Saludos.

La verdad es que lo que cuentas no lo he tocado nunca.

Mira a ver si en el fichero que puedes desempaquetar hay un archivo que se llama script.bin, claro, que suele estar en boot.img, ese archivo es el que arranca, entre otras cosas, los drivers de la pantalla y el táctil.

Para los archivos que no puedes desempaquetar inténtalo bajo linux, como si de un .img se tratara.
Responder
#6
haré pruebas en linux, gracias por la ayuda.
salu2
Responder


Salto de foro:


Usuarios navegando en este tema: 4 invitado(s)