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


Mensajes en este tema
Desempaquetar y empaquetar ROMs System.img y boot.img. - por chujalt - 14-03-2021, 21:35

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)