Ver Mensaje Individual
  #334  
Viejo 23/12/20, 11:56:29
Array

[xs_avatar]
jacklien jacklien no está en línea
Usuario poco activo
 
Fecha de registro: dic 2020
Mensajes: 1
Modelo de smartphone: Iphone7S
Tu operador: -
Suggestion for you

 Cita: Originalmente Escrito por Leokai Ver Mensaje
Lo que empezó como una investigación se ha convertido en un verdadero tutorial con el que obtener la rom oficial roteada y en ext4.
Igualmente la investigacion sigue y entre todos vamos a ir añadiendole todas las mejoras posibles a nuestra pascal, por lo que sera una investigación siempre abierta que conforme se vayan confirmando cosas ira formando el tutorial ^^

ESTADO ACTUAL
ARCHIVOS
.
Prácticamente la mayoría de todo el proceso se hace mediante linux así que recomiendo que quien quiera hacerlo, se baje virtualbox (para crear una maquina virtual) y una distribución de ubuntu (yo utilice la 10.4).


ROOTEAR Y PASAR A EXT4 EL SYSTEM.IMG

Primera Fase
Quien ya tenga la partición system.img rooteada o sepa como hacerla, que pase a la segunda fase directamente.
Bueno, manos a la obra. Lo primero de todo es bajarse la rom oficial con el que trabajaremos:
-Rom oficial: http://www.bqreaders.com/productos/pascal.html
Y vamos a desempaquetarla y rootearla con las herramientas de wendals:
-Las herramientas de wendal: http://www.mediafire.com/?4eief2tqx3f1t3f
Desde windows descomprimimos RK29xxImageTools_v2.1, metemos la rom oficial renombrada a "wendal" y y ejecutamos runme.bat, marcamos un 1 (para desempaquetar) y damos intro. Se nos creara una carpeta system y una temp. Dentro de temp, tenemos la carpeta image donde tenemos: boot.img, kernel.img, misc.img, recovery.img y system.img.
(Click para mostrar/ocultar)

Para lo que queremos hacer los archivos que hay que modificar son el boot.img y el system.img ya que system.img es la partición en formato cramfs que tendremos que pasar a ext4, y el boot espera recibir un system en cramfs y habrá que moodificarlo para que espere una ext4.
La cuestión es que el system.img aun no esta rooteado tampoco así que las herramientas de wendal ya nos desempaquetan el system.img en la carpeta system nombrada anteriormente, y aun mas, ya nos ha metido root en esa carpeta, por tanto si volvemos a empaquetar la imagen, lo que hará es pasar la carpeta system a system.img y volver a empaquetar todo en un solo archivo wendal_new.img

Hasta ahora lo que tenemos es wendal_new.img que si lo renombrásemos a update.img y lo metiésemos en la raíz de la tablet para actualizarla, la tendriamos como la oficial, con sistema de archivos cramfs y rooteada.

Ahora trabajaremos con el wendal_new.img que haremos lo mismo que hicimos con la oficial, renombrarla a wendal.img y desempaquetarla con las herramientas de wendal. La diferencia ahora es que cuando nos cree en la carpeta temp/image los archivos, la system.img SI que esta rooteada, por lo que podemos pasar a la segunda fase, convertirla a ext4.


Segunda Fase
A partir de aquí trabajaremos en ubuntu, nos logueamos como root y cogeremos nuestra system.img rooteada y la copiaremos en nuestra carpeta personal.
Abrimos un terminal y empezamos con el lio:
mkdir ~/tmp (con esto creamos una carpeta tmp en la carpeta personal)
cp ~/system.img ~/tmp (copiamos nuestro system.img en la carpeta tmp)
mv ~/tmp/system.img ~/tmp/system-orig.img (la renombramos a system-orig.img)
cramfsck -x ~/tmp/system-orig ~/tmpsystem-orig.img (extrae los archivos a una carpeta system-orig)(al poner este comando, si no lo tienes te lo descargará)
dd if=/dev/zero of=~/tmp/system.img bs=1024 count=250000 (creamos un system.img vacio, la cifra del count es el tamaño que tendra y esta en kbytes, son unos 244 MB, si necesitaseis mas espacio, aumentadlo)
/sbin/mkfs.ext4 ~/tmp/system.img (formateamos nuestra system.img vacia a ext4)
mkdir ~/tmp/system (creamos una carpeta system)
mount -t ext4 -o loop ~/tmp/system.img ~/tmp/system (montamos nuestra system.img en ext4 en la carpeta system)
cp -a ~/tmp/system-orig/* ~/tmp/system (copiamos los archivos extraidos antes de nuestra system-orig.img a la carpeta system conservando permisos (gracias a pirata2k) que al estar montada la system.img que hemos creado en ext4 estamos introduciendo los archivos en ella)
umount ~/tmp/system (desmontamos la imagen)

Listo! ya tenemos nuestra system.img en ext4 y con los archivos de nuestra system-orig.img. Recomiendo renombrar nuestra system.img a ext4system.img para evitar confusiones, y con esto, solo nos queda copiarla y ir a windows para pasar a la Tercera Fase.


Tercera Fase
Bien, en este punto vamos a flasear la tablet con el nuevo system en ext4. Para ahorrar trabajo lo que haremos es usar los archivos de la rom italiana zyggyDr01d 1.0 lite que podemos descargar aqui.
La ventaja de esto es que su boot.img ya viene preparado para un system.img en ext4 así nos ahorra el trabajo de hacerlo nosotros, aunque mas adelante se explica como desempaquetar y empaquetar el boot.img para hacer el nuestro propio.
Actualizo: quien no se quiera calentar la cabeza, aqui le dejo el boot.img de los italianos, modificado con las imagenes oficiales (excepto lo de mediacom que sale al principio) y lenguaje y hora por defecto de españa.

Para flasear conectaremos nuestra tablet apagada, sin el cargador puesto y manteniendo el botón de bajar volumen, por usb al pc y ejecutaremos el archivo RK29update.exe.
En el programa iremos a la parte de system y pinchando en los puntos suspensivos (...) elegiremos nuestra system.img (ext4system.img si la renombrasteis).
Después pulsaremos Formatta! y cuando acabe a Aggirona!!

Y eso es todo, ya tenemos nuestra tablet root y en ext4. Si usasteis el boot italiano, nuestra tablet arrancará con las imagenes de la italiana y en idioma italiano, pero el sistema sera el de la oficial en ext4.

Como siempre, yo no me responsabilizo de ningún daño y todo lo que hagáis es bajo vuestra responsabilidad, aunque yo la he flaseado tantas veces que ya ni me acuerdo y ningún problema ^^


EMPAQUETADO Y DESEMPAQUETADO DEL BOOT.IMG

Desempaquetar el boot.img
Todo el proceso se hace completamente en ubuntu. Antes de nada necesitaremos un editor hexecimal, yo he utilizado el GHex. En nuestra carpeta personal creamos una carpeta llamada boot e introducimos dentro nuestro boot.img. Cargamos el boot.img en el GHex y cogemos los bytes del 4 al 7
(Click para mostrar/ocultar)

estos bytes tenemos que leerlos a la inversa, es decir, si en el ejemplo son 71 18 03 00, leídos a la inversa seria 00 03 18 71 y lo pasamos a decimal (que este ejemplo en concreto daría 202865) (gracias a pirata2k por el aviso). Esta pagina puede ayudarnos: http://www.statman.info/conversions/hexadecimal.html
(Click para mostrar/ocultar)


Ahora abrimos un terminal y comenzamos:
dd if=~/boot/boot.img of=~/boot/ext4boot.gz skip=8 bs=1 count= (detras de count= pondremos el valor decimal que hemos obtenido antes)
mkdir ~/boot/ext4boot;cd ~/boot/ext4boot;zcat ~/boot/ext4boot.gz|cpio -idm (con esto crearemos una carpeta en ext4 donde se desempaquetaran los archivos del boot.img
Y ya esta, en la carpeta ext4boot tenemos los archivos ^^


Empaquetar el boot.img
Abrimos terminal y empezamos:
cd ~/boot/ext4boot
find . -exec touch -d "1970-01-01 01:00" {} \;
find . ! -name "."|sort|cpio -oa -H newc --owner=root:root|gzip -n >../newboot.gz
cd ..
Ahora para que nos funcione el comando que necesitamos (el rkcrc) necesitamos un archivo. Ya me he encargado de compilarlo así que os lo subo aqui: http://www.mediafire.com/?2a61ma2pb0l2pzx
Solo tenéis que meterlo DENTRO de la carpeta bin de la raiz de vuestro linux:
(Click para mostrar/ocultar)

Una vez hecho esto, seguimos en el terminal:
rkcrc -k newboot.gz newboot.img
Newboot.img sera vuestro boot empaquetado con los archivos que hayais modificado.





Si alguien quiere experimentar, en el archivo init.rc, si lo abrimos para editarlo nos encontramos una serie de lineas como estas:
# mount mtd partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount cramfs mtd@system /system
#mount mtd@system /system ro remount
mount ext3 mtd@userdata /data nosuid nodev noatime nodiratime
mount ext3 mtd@cache /cache nosuid nodev noatime nodiratime
Si desempaquetais el boot italiano vereis que estas lineas las muestra con ext4 así que habría que cambiarlas. También encontré en el boot italiano justo después de estas lineas, la implementación del bluetooth. Habra que estudiar todo esto y ver las diferencias con el boot italiano

Cuando alguien pruebe el boot que comente si le funciona o se queda trabado. Yo por falta de tiempo solo he podido probarlo una vez y se me quedo colgado, supongo que hay que cambiar algunas cosas mas.

Cuando tenga un rato me pondré a investigar todo esto ^^


SCRIPTS LINUX PARA CONVERTIR A EXT3 Y ROOTEAR LA ROM OFICIAL
Pues ya he terminado los scripts que facilitan el trabajo de conversión a ext3 y root ^^
He de dar las gracias a joaopinto por mostrarnos su tutorial de conversión

Descargar : http://www.mediafire.com/?q5h77tma4yfk0x4
Antes de usarlo necesitamos unas librerias que se instalan desde el terminal con el comando:
sudo apt-get install build-essential libusb-1.0-0-dev libssl-dev


Funcionamiento de los scripts:

Primero tienes que poner el boot.img y el system.img en la carpeta "originales". Si dispones del update oficial en un solo archivo (update.img) mátelo en la carpeta "update" y ejecuta el script "unpack_update", te desempaquetara automaticamente su boot.img y system.img en la carpeta "originales"

Ahora procedemos a desempaquetar el boot ejecutando el script unpack_boot. Se nos creará una carpeta "nuevos" y dentro de ella una carpeta "boot" donde tenemos los archivos del boot.img

Para convertir el boot en ext3 tenemos que editar el archivo "init.rc"
Buscamos la siguiente linea (la 110):
mount cramfs mtd@system /system
y la sustituimos por esta:
mount ext3 mtd@system /system ro noatime nodiratime
Guardamos y ahora procedemos a volver a empaquetarlo.

Para empaquetarlo ejecutaremos el script "pack_boot" que nos creará en la carpeta "nuevos" nuestro boot.img modificado para ext3.

El siguiente paso es el system. Para desempaquetarlo ejecutaremos el script "unpack_system". Nos creara una carpeta dentro de "nuevos" llamada "system" donde estarán todos los archivos. El script ya la habrá rooteado así que accede a esta carpeta para quitar aplicaciones que no necesites o ponerle algunas mejoras visuales, y cuando creas oportuno, volvemos a empaquetarla.

Al empaquetar se formateara automaticamente en ext3, y para ello, ejecutaremos el script "pack_system", marcamos una "s" cuando nos pregunte y pulsamos intro.

Nos habrá creado en la carpeta "nuevos" nuestra system.img en ext3 y rooteada.

Actualmente, el script de pack_update vuelve a empaquetar todo en un update.img, pero al estar en ext3 no funciona de momento, asi que flasearemos con los archivos directamente.

Cogemos el boot.img y system.img de la carpeta "nuevos", los llevamos a windows, y dentro de la carpeta RK29update, los metemos en la carpeta "img".

Conectamos al pc la tablet apagada, sin el cargador puesto y manteniendo el boton de bajar volumen y ejecutamos RK29update.exe

Si vemos que pone "Dispositivo conectado" es que el programa la detecta y esta listo para flasear.

Pulsamos primero "Formatear" y cuando termine "Actualizar"

Cuando termine ya tenemos instalada nuestra rom ^^
use this https://www.easyunitconverter.com/number-converter
Responder Con Cita