Ver Mensaje Individual
  #1  
Viejo 07/05/12, 20:50:40
Avatar de chujalt
chujalt chujalt no está en línea
Usuario muy activo
Mensajes: 577
 
Fecha de registro: ene 2010
Localización: Alicante
Mensajes: 577
Modelo de smartphone: Teclast P20HD
Versión de ROM: JB Po_ROM_Pompero V1.0
Versión de Radio: M80 XD
Tu operador: Yoigo
Mencionado: 0 comentarios
Tagged: 0 hilos
Tutorial desempaquetar y empaquetar ROMs Allwinner y boot.img

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 para Windows (desempaquetar system.img para hacer un update.zip):
http://www.chujalt.com/android/herramientas.rar Creamos una carpeta en la raiz de C, vamos a llamarle cocina, y metemos los tres programas dentro.
http://forum.xda-developers.com/show...php?p=28329544 Bajarse la mas actualizada. Dentro de la carpeta anterior creamos otra, la llamamos ImgRepacker y metemos los archivos que contiene el zip dentro de ImgRepacker.

Herramientas para Linux (para hacer una custom rom):
http://www.mediafire.com/?zcawpra6kc8lr7l Introducimos la carpeta ext4_utils dentro de la carpeta personal.

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
Si la carpeta system ocupa mas de 256 megas, cambiar el 256M por lo que ocupa la capeta system + 20 ó 25 megas. Si la capeta system ocupa 350 megas, habría que poner 370M
14º sudo umount tmp intro
15º rm -rf tmp intro. Estos dos comandos anteriores son para eliminar la carpeta tmp.
16º Ya tenemos el system.img modificado, es el system.mod.img. Lo copiamos dentro de la carpeta de windows ImgRepacker.
17º Dentro de Windows ponemos el system.mod.img dentro de la carpeta que se nos creó al desmontar la rom original y lo renombramos a system.fex.
18º Ejecutamos runner.bat
19º Click botón izquierdo sobre esa carpeta y arrastramos a la ventana de runner .bat
20º 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.
21º 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.


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 http://www.chujalt.com/android/boot-tools.zip 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á.

Saludos y que les aproveche.

Última edición por chujalt Día 13/06/13 a las 21:10:50
Responder Con Cita
Los siguientes 18 usuarios han agradecido a chujalt su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]