Ver Mensaje Individual
  #7  
Viejo 20/05/14, 22:54:49
Array

[xs_avatar]
Mlro Mlro no está en línea
Usuario muy activo
 
Fecha de registro: sep 2011
Mensajes: 624
Modelo de smartphone: S5570XWKT2 / GINGERBREAD.XWKTH
Tu operador: Tuenti Movil
 Cita: Originalmente Escrito por pitbtons Ver Mensaje
Después de mucho pelear con el Samsung Galaxy Mini y el nuevo sistema de actualización de CM11 os paso unos script que funcionan. [NO SE NECESITAN PROGRAMAS EXTERNOS]

La idea es:
-Hacer que en el arranque del tlf se monte la segunda partición ext4 de la tarjeta SD
(Hay muchos post de cómo crear una partición ext)
-Mover la carpeta /data/dalvik-cache a esa partición, esto ahorra 90MB
-Además se puede mover la carpeta APP, así ya no hay problemas de instalación.

El primer problema:
Yo usaba los scripts en la ruta /system/etc/init.d
Con el nuevo sistema de actualizaciones de CM11 esta ruta se borra cada vez que actualizas.
La solución, meter los scripts en la ruta /data/local/userinit.d

El segundo problema:
Después de actualizar a veces es necesario un Wipe dalvik-cache para que el sistema arranque, esto borra el link pero no los datos de la cache ya que están en la SD
La solución viene con el 2º script

Consideraciones previas:
Los script deben copiarse manualmente desde el file manager (con permisos de administrador) en la carpeta /data/local/userinit.d (si no existe debemos crearla) ambos script tendrán permisos root:shell rwxr-xr-x. Si alguien quiere hacer un instalador que lo haga.
En la partición ext4 de la tarjeta SD yo tengo creada la estructura /sd-ext/data/dalvik-cache, se puede cambiar pero debe existir la ruta para que el script funcione

Estos son los Script:
1º Script modificado del que crea la aplicación link2sd

Este script monta la segunda partición de la tarjeta en /sd-ext, por tanto en la pantalla de información del telefono-->Partition info aparece y te muestra la ocupación.

Código:
#!/system/bin/sh
#added by link2sd
#and modified by Pit BTons
LOG=/data/link2sd-11link2sd.log
echo "$(date) mounting..." > $LOG
echo "mounting script in data local userinit.d" >> $LOG
#Línea anulada, no funciona
#mount -t ext2 -o rw /dev/block/vold/179:2 /data/sdext2 1>>$LOG 2>>$LOG 
mount -t ext4 -o rw /dev/block/mmcblk0p2 /sd-ext 1>>$LOG 2>>$LOG
mount >> $LOG
echo "$(date) mount finished" >> $LOG
#Línea anulada
#chmod 773 /data/dalvik-cache
2º Script de mi auditoria

Este script comprueba y reestablece el enlace al Dalvik-Cache de la tarjeta SD después de un Wipe Dalvik-Cache.
-Si ya existe un enlace para el dalvik-cache, no hace nada.
-Si existe la ruta al dalvik-cache pero no es un enlace (la rom arrancó anteriormente sin tener el vínculo con la SD), hace un wipe de datos y establece el link con la SD
-Si no existe la ruta al dalvik-cache (primer arranque tras un wipe), hace un wipe de datos y establece el link con la SD.

Código:
#!/system/bin/sh
#script to chech if exist dalvik-cache
#by Pit BTons

LOG=/data/checkdalvik.log
TARGET=/sd-ext/data/dalvik-cache
DEST=/data/dalvik-cache

echo "$(date)" > $LOG
echo "Checking if exist dalvik-cache link"  >> $LOG
#Verificar si existe la ruta en la SD
if [ -d $TARGET ]; then
    echo "Target in SD found">>$LOG;
    if [ -d $DEST ]; then
        if [ -L $DEST ]; then
            #Ya existe el Link a la SD: Nada que hacer
            echo "Destination is Link">>$LOG;
            ls -l $DEST 1>>$LOG 2>>LOG;
            echo "">>$LOG;
            echo "Dalvik-Cache is linked yet">>$LOG;
        else
            #El sistema creó el directorio Dalvik: Borrar Directorio | Borrar Cache en SD | Link to SD
            echo "Destination is a directory">>$LOG;
            rm -rf $DEST 1>>$LOG 2>>$LOG;            
            rm -rf $TARGET/* 1>>$LOG 2>>$LOG;
            ln -s $TARGET $DEST 1>>$LOG 2>>$LOG;
            echo "">>$LOG;
            echo "Dalvik-Cache linked to SD">>$LOG;
        fi;
    else
        #No existe el Link/Directorio Dalvik: Borrar Cache en SD | Link to SD
        echo "Destination missing">>$LOG;
        rm -rf $TARGET/* 1>>$LOG 2>>$LOG;
        ln -s $TARGET $DEST 1>>$LOG 2>>$LOG;
        echo "">>$LOG;
        echo "Dalvik-Cache linked to SD">>$LOG;
    fi;
fi;
Espero que esto evite a alguno más de un dolor de cabeza
Un saludo a todos
Hola,
tengo una duda, que no se que nombre ponerle a los escript ? bueno ya se me ocurrirá algo ..
..Muchas gracias
__________________


Ultma actualizacion CyanogenMod Versión: 10.1.0-RC3-GTS5570-tass. Funciona todo bluethooth, radio etc y fluida aquí
Responder Con Cita