PDA

Ver la Versión Completa : [ IDEA ] Mejorar el Alcatel 991 con init.d support y la sd-ext con ext4 filesystem


ivancorpiz
09/08/13, 03:22:16
PREFACIO


Hola amigos, leyendo, investigando y experimentando como incrementar la memoria interna para el Alcatel OT-991 de un amigo, y despues de varios intentos y probar scripts a traves del tiempo, le hice unas mejoras, para que funcione la la particion sd-ext con systema de archivos EXT4, que incrementa la rapidez de respuesta del movil.
Primero hacer funcionar init.d desde el disco duro del movil y para que funcionen los scripts.
Tambien hay el metodo desde windows con archivos .BAT que usan jeffta, vesa, gradu en que los escripts funcionan desde la sdcard.

Se comprueba con el comando "mount" usando la app gratis de terminal emulator (https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=es) desde play store, observando la parte donde dice:

dev/block/mmcblk0p2 --->> y al lado de esto diga -->> ext4

Haciendo lo correcto no presento ningún Force Close, el wifi, bluetooth, 3G, todo funciona normal.

Bueno espero también les funcione, recordando que aplicar este post esta bajo su propio riesgo, mas información esta en los links y cualquier error, confusión u omisión por favor me lo hacen saber, quizás me falte experimentar mas, saludos.


ANTECEDENTES

Actualmente el Alcatel OT-991 solo tiene stock kernel.
Otros moviles tienen custom kernels que ya vienen con soporte para ext4 systemfile, esto significa, que utilizando un formateador ext4 como el conocido multtiformaterext4 permite o soporta el montaje a ext4 systemfile mejora la velocidad de respuesta del movil, inclusive hay kernels que no se necesita el multtiformater sino que directamente al aplicarle el script ya la sd-ext es montada en el systema de archivos ext4.

Usando el multtiformater-ext4 quedaria asi:

system -->> ext4
data -->> ext4 todo esto mejora el rendimiento
cache -->> ext4
sd-ext -->> ext2 o ext3 o fat32 (algunos casos del link2sd funciona solo con fat32)


Existen custom kernel que ya vienen incorporado el ext4 systemfile, como es el caso de kernels para cyanogenmod u otros kernels, en que ya no se necesita por ejemplo el multiformater.

Entonces igual quedaba asi:

system -->> ext4
data -->> ext4 todo esto mejora el rendimiento
cache -->> ext4
sd-ext -->> ext2 o ext3 o fat32 (algunos casos del link2sd funciona solo con fat32)

Entonces ahora con el siguiente procedimiento obtengo un ext4 systemfile trabajando en la particion SD-EXT de la SDCARD:

system -->> ext4
data -->> ext4
cache -->> ext4
sd-ext -->> ext4 -->> todo esto mejora un poco mas el rendimiento

Puedes verificar en tu actual rom escribiendo "mount" (sin comillas claro esta) en terminal emulator (https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=es) (no es necesario tener permisos de superusuario) y comprueba en que systemfile esta trabajando tu particion SD-EXT con el script de incremento de memoria interna que estes usando como ejemplo el int2ext u otro, si dice ext2, ext3 u otro caso pues... prueba.. testea..trastea...este procedimiento y segun sean tus experiencias aporten con algo mas para mejorar el movil.

Puedes hacer un backup con con clockworkmod o con titanium (https://play.google.com/store/apps/details?id=com.keramidas.TitaniumBackup&hl=es).


CREANDO EL INIT.D

1-Descargar los archivos busybox, dexdump, openvpn, sqlite3 y zipalign del siguiente link -->> http://www.mediafire.com/download/yipmhq8179mf35i/xbin_para_alcatel_991.rar

2-abrir el zip de la rom y entras en la carpeta que dice system
luego veras varias carpetas y entra en la que dice xbin
y pegas los 5 archivos ahi, adentro de xbin

4-luego flasheas la rom, para esto por favor sigue las instrucciones de instalacion que diga el autor de la rom.

Una vez que la rom esta funcionando ya puedes realizar lo soguiente:

5-Descarga el zip flasheable Jamesst20-init.d.zip del siguiente link: http://forum.xda-developers.com/showthread.php?t=1912504 -->>
hacer click donde dice Download Here

este zip al momento de flashear presento error del CWM Status0, entonces se soluciona reemplazando el update-binary del jamesst20-init.d.zip por el update-binary de la rom que estan usando. como hacemos esto ?

a)Abrir el zip de jamesst20 y entrar en la carpeta META-INF luego en com, luego a google, luego a android y veras el archivo update-binary y lo borras.
b)Abrir el zip de la rom y entrar en la carpeta META-INF luego en com, luego a google, luego a android y veras el archivo update-binary y lo extraes.
c)Vuelves abrir el zip de jamesst20 y entrar en la carpeta META-INF luego en com, luego a google, luego a android y aqui pones el archivo extraido y cierras el
zip de jamesst20.

6-copiar el jamesst20.zip en la raiz de la sdcard y flasheas usando el cwm Recovery --> montar solo system (quedaría.. unmount system) ,luego install zip, luego choose zips y flasheas y comprobar que funcione en la ruta:

data/local/tmp/init.d_log_test.txt

abrir el archivo init.d_log_test.txt y debe decir por ejemplo:

done
wed Jul 31 20:09:35 ECT 2013

Luego les sugiero hacer al menos un reinicio mas y nuevamente verificar en:
data/local/tmp/init.d_log_test.txt si todo bien , coninue...


COMO INCREMENTAR LA MEMORIA INTERNA USANDO INI.D Y LA PARTICION SD-EXT MONTAR EN EXT4 FILESYSTEM

7-Particionar su sdcard con minitool u otro programa (http://www.htcmania.com/showthread.php?t=458674)

-primary-fat32,
-primary-ext2, 3 o 4 -->> sugiero 512MB
-y la primary-swap (opcional)

8-Descargar los modulos:

>> gracias a Banjo091, amarullz, yuweng, jeffta, vesa, gradu y otros
>> link : http://forum.xda-developers.com/showthread.php?t=1754799

descargar el archivo AIO-mt6573-Data2sd-ext4-For_Testing.7z
y extraer los modulos: ext2.ko - ext4.ko - jbd2.ko y mbcache.ko

usando root explorer, los modulos los copian y pegan adentro de la carpeta modules, que esta en la ruta -->> system/lib/modules/aqui poner los cuatro modulos
usando root explorer cambian los permisos haciendo un click sostenido, se abre un cuadro de dialogo que dice Options y entran en Permissions

Permissions
read write execute
owner si si no
group si no no
others si no no

y debe quedar asi: rw-r--r-- igual q los otros archivos de la carpeta modules

9-el script para incrementar la memoria interna:

>> gracias a cronmod, yuweng, amarullz y casacristo y otros
>> link: http://forum.xda-developers.com/showthread.php?t=1754799

descargar el archivo > scriptz_cronmod.7z
abren el zip y extraen la carpeta y al archivo 01int2ext4.sh le quitan la sh y quedaria asi > 01int2ext4

usando root explorer copiar y pegar el script adentro de la carpeta init.d, en la ruta --->> system/etc/init.d/aqui poner el script
usando root explorer cambian los permisos haciendo un click sostenido, se abre un cuadro de dialogo que dice Options y entran en Permissions

Permissions
read write execute
owner si si si
group si si si
others si si si

y debe quedar asi: rwxrwxrwx


10-Listo, solo queda reiniciar el movil y comprobar el nuevo tamaño de la memoria en la ruta:

setting (ajustes o configuracion) >> SD card and phone storage >> Internal phone storage >> Available space >> 493MB

tambien se puede comprobar con root explorer ir a la raiz del sistema y entrar en la carpeta data y observaran en la parte de arriba el tamaño en megas
disponibles >> 493MB


COMO COMPROBAR


Para comprobar pueden usar tanto terminal emulator como adb desde el pc.
escribir o copiar los siguientes comandos:

a) mount
> sirve para encontrar > /dev/block/mmcblk0p2 /data ext4 >

b) mount | grep ext4
> sirve para lo mismo pero mas resumido (mejor usen este)

c)df
> sirve para analizar el tamaño de cada particion y tambien comprobar como se ha montado el script

d) free
> sirve para analizar la memoria ram

Espero les funcione bien!!

________________________________________________

UN EJEMPLO : desde terminal emulator ó ADB windows

Lo pueden hacer desde terminal emulator o desde adb windows.

Microsoft Windows XP [Versión 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\User\Escritorio>adb shell
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
# mount
mount
rootfs / rootfs rw,relatime 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
/dev/block/mtdblock12 /system yaffs2 ro,relatime 0 0 -->> falta cambiar a ext4
/dev/block/mtdblock13 /custpack yaffs2 rw,relatime 0 0 -->> falta cambiar a ext4
/dev/block/mtdblock16 /sd-ext yaffs2 rw,nosuid,nodev,relatime 0 0
/dev/block/mtdblock15 /cache yaffs2 rw,nosuid,nodev,relatime 0 0 >> falta cambiar a ext4
/dev/block/mtdblock14 /sd-ext/wd yaffs2 rw,relatime 0 0
tmpfs /sd-ext/local/sqlite_stmt_journals tmpfs rw,relatime,size=4096k 0 0
/dev/block/mtdblock8 /sd-ext/nvram/md/s yaffs2 ro,relatime 0 0
/dev/block/mmcblk0p2 /data ext4 rw,nosuid,nodev,noatime,nodiratime,barrier=0,nob -->> aqui esta la sd-ext montada en ext4 filesystem
h,data=writeback,noauto_da_alloc 0 0
/dev/block/mtdblock16 /data/nvram yaffs2 rw,nosuid,nodev,relatime 0 0
/dev/block/vold/179:1 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,relatime,u
id=1000,gid=1015,fmask=0702,dmask=0702,allow_utime =0020,codepage=cp437,iocharset
=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/179:1 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relat
ime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_ utime=0020,codepage=cp437,ioch
arset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000 0 0
#

# df
df
Filesystem Size Used Free Blksize
/dev 100M 64K 100M 4096
/mnt/asec 100M 0K 100M 4096
/mnt/obb 100M 0K 100M 4096
/system 115M 109M 5M 4096
/custpack 145M 48M 96M 4096
/sd-ext 158M 51M 107M 4096
/cache 60M 1M 58M 4096
/sd-ext/wd 1M 772K 380K 4096
/sd-ext/local/sqlite_stmt_journals 4M 0K 4M 4096
/sd-ext/nvram/md/s 1M 768K 384K 4096
/data 493M 63M 430M 1024 -->> la memoria ya incrementada
/data/nvram 158M 51M 107M 4096
/mnt/sdcard 6G 2G 4G 4096
/mnt/secure/asec 6G 2G 4G 4096
#

# free
free
total used free shared buffers
Mem: 206528 200700 5828 0 8520
-/+ buffers: 192180 14348
Swap: 0 0 0
#


PORQUE SE USAN LOS MODULOS

Pues porque el script 01int2ext4 lo pide:

#!/system/bin/sh
###################################
## CronMod INT2EXT4 - 08/24/2012 ##
## Written by CronicCorey @xda ##
## 40int2ext ##
###################################
## Thanks to Mastermind1024 @xda for helping to solve the IMEI and Baseband issues on some devices
insmod /system/lib/modules/mbcache.ko
insmod /system/lib/modules/jbd2.ko --->> el script invoca a los modulos
insmod /system/lib/modules/ext4.ko
## Set SD cache size
if [ -e /sys/devices/virtual/bdi/179:0/read_ahead_kb ]
then
busybox echo "2048" > /sys/devices/virtual/bdi/179:0/read_ahead_kb;
fi;

## Make /sd-ext directory if needed and unmount /sd-ext if it already mounted
if [ ! -e /sd-ext ]
then
busybox mount -o remount,rw /;
busybox mkdir /sd-ext;
busybox mount -o remount,ro /;
else
busybox umount /sd-ext;
fi;

## Move /data mount point to /sd-ext
busybox mount --move /data /sd-ext;

## Mount mmcblk0p2 to /data ---->> el script monta la particion sd-ext en ext4 filesystem
busybox mount -t ext4 -o nosuid,nodev,noatime,nodiratime,barrier=0,nobh,dat a=writeback,noauto_da_alloc /dev/block/mmcblk0p2 /data;
busybox chown 1000:1000 /data;
busybox chmod 771 /data;




:ok: :ok: :ok:

eduardofp
09/08/13, 10:06:07
:dios: sonar suena de perlas. Pero soy novato y no he entendido mucho jajaja

ivancorpiz
10/08/13, 10:07:59
:dios: sonar suena de perlas. Pero soy novato y no he entendido mucho jajaja

He editado para agregar unos links de tutorial de otros usuarios para saber como particionar y asi es eduardofp, al principio no se comprende muy bien pero con el tiempo se pueden hacer mas cosillas, intentalo, saludos

Ravengold
15/08/13, 20:28:11
Amigo se ve re bueno eso ya qe yo quisiera q mi alcatel 991 funcione mas rapido, pero a la vez se ve complicado hacerlo, si no seria mucho que hagas un tutorial en youtube para ayudar. No me estarias ayudando a mi,si no a muchos usuarios de este telefono para que ande mas rapido y demas cosas. Gracias!

ivancorpiz
16/08/13, 07:24:23
buenas noche.. no es necesario un video sino leer y leer y leer.

acabo de probar en Rom 360 v0.3 Latina.... funcionando todo, init.d, los módulos.
aunque esta rom ya trae incorporado busybox en xbin igual se puede sobrescribir... daría lo mismo,
animo ¡!

Ravengold
17/08/13, 03:03:40
Sii entiendo eso pero, lo que pasoa es que tngo un pequeño problema con mi alcatel 991, el modo recovery no me funciono mas desde que flashee y rotee mi telefono y no puedo instalar roms y demas cosas, alguien podia decirme que puede ser ese problema, el resto anda de maravilla :)

ivancorpiz
19/08/13, 04:45:01
buenas, yo recuerdo use esto...
como instalar recovery en alcatel
forum.xda-developers.com/showpost.php?p=32960322

aqui hay algo mas
forum.xda-developers.com/showpost.php?p=37457627



suerte ¡!

ivancorpiz
19/08/13, 04:45:46
para los que no les guste el metodo de instalacion de gingersam by gradu...pueden usar dsixda usando la opcion del menu que dice unpack data.img y los archivos img de la rom le van cambiando a data.img y van procesando una a una, luego compilan la rom y para poder instalala usan el meta-inf de la rom de jeffta v3.1 , y entonces ya se puede flashear por el metodo acostumbrado del cwm, tambien hay otras herramientas y googleando se las encuentra.

ivancorpiz
19/08/13, 04:48:28
Funcionando en Gingersam by gradu...para este mod rom no es necesario descargar el punto 1 de mediafire...solo crean el init.d y luego incrementan la memoria.

ivancorpiz
19/08/13, 04:50:37
el init.d funciona gracias a que el kernel lo permite...debido a que en el init.rc esta habilitado el service flash recovery por la linea 800 y suele decir asi..

service flash_recovery /system/etc/install-recovery.sh
oneshot

cuando esta deshabiiltado suel aparecer asi...

#service flash_recovery /system/etc/install-recovery.sh
#oneshot

entonces al editar el init.rc ----- solo se elimina el # .....y asi con otros servicios pero teniendo mucho cuidado, pero igual creo solo dejando el movil dentro de un tanque de agua o golpeandolo fuerte se muere jeje....pero igual cuidado....


entonces el file de jamesst20 contiene un script de install-recovery.sh, entonces init.rc hace funcionar el install-recovery.sh esta a sysinit - logwraper - runparts(busybox) - etc - init.d - datetest por ultimo data/local/tmp/init.d_log_test.txt

para usar el unpacked kernel usando dsixda tool (http://forum.xda-developers.com/showthread.php?t=633246). (segun comprendi es una cocina para principiantes) el cual envia su descarga a la ultima version (https://github.com/dsixda/Android-Kitchen/tags) y se necesita cygwin si es que se va usar en windows

entonces se puede editar para habilitar o deshabilitar funciones, saludos

ivancorpiz
29/08/13, 07:36:18
Gracias a fr24 vi la rom SandwichXperia mod SINGLE SIM VERSION (http://forum.xda-developers.com/showthread.php?t=2153268) y su autor es Vesa en xda y hasta el momento es de mi preferencia y tambien funciona el procemidiemto del init.d y el montaje del ext4, cada vez va mejorando este movil.