Actualmente uso Link2SD porque el almacenamiento integrado de mi teléfono es insuficiente para más de unas pocas aplicaciones esenciales. Es muy efectivo pero limitado cuando el teléfono está encendido.
Al cambiar las ROM, el caché de dalvik se borra y cuando el teléfono se reinicia, verá una barra de progreso que dice que Android está optimizando las aplicaciones. Entonces, dada una cantidad razonable de aplicaciones, el caché dalvik llena el almacenamiento mucho antes de que link2sd pueda hacer algo al respecto.
Entonces, ¿hay alguna manera de montar una carpeta de tarjeta SD como la ubicación de caché adecuada antes de que el sistema comience a arrancar y hacer su trabajo? Sé que podría implicar la creación de un enlace simbólico, pero no sé cuándo se montan las cosas y en qué orden.
Por supuesto que puede. Aunque parece que no hay problema para migrar dalvik-cache a un sistema de archivos de tarjeta SD normal (el más común, vfat), se recomienda enfáticamente que formatee su tarjeta SD a ext4 (o igual que su /data
) para asegurarse de que todo funcione bien.
Entonces vamos. Se recomienda una copia de seguridad completa de todas sus aplicaciones antes de continuar, aunque si tiene suerte, no es necesario. Suponiendo que tiene un emulador de terminal para hacer los trabajos necesarios.
Primero, cree una carpeta a la que desee migrar su dalvik-cache. Entonces chmod
y chown
la nueva carpeta para que coincida /data/dalvik-cache
. Si está ejecutando un sistema operativo Android habilitado para SELinux, no olvide cambiar los contextos de seguridad correspondientemente. Correr
ls -dlZ /data/dalvik-cache
ls -lZ /data/dalvik-cache
para ver los permisos originales, propietarios/grupos y contextos de seguridad de la carpeta dalvik-cache.
A continuación, copie todos los archivos desde /data/dalvik-cache
su nueva ubicación, por ejemplo /storage/sdcard1/dalvik-cache
. Puede usar cp -a
el comando para conservar los atributos del archivo, lo que simplificaría las cosas.
Asegúrese de que no se inicien nuevas aplicaciones durante el proceso del siguiente paso.
Luego, rm -r /data/dalvik-cache
y crea un enlace simbólico a la nueva ubicación usando
ln -s /storage/sdcard1/dalvik-cache /data/dalvik-cache
Eso es todo. hemos terminado Reinicie su teléfono (no es obligatorio, pero se recomienda).
Algunos avisos sobre este proceso:
Es posible que el busybox no siempre funcione bien, ya que Android se basa en un kernel de Linux altamente modificado. Por ejemplo, casi todas las funciones relacionadas con SELinux no funcionan correctamente. Puede probarlo como se muestra a continuación.
toolbox ls -Z /data
busybox ls -Z /data
toolbox getenforce
busybox getenforce
Sin embargo, estos pueden funcionar correctamente, dependiendo de la versión de Android:
busybox chcon <context> <files...>
busybox runcon <context <program> [args...]
Nunca extraiga su tarjeta SD. Si vuelve a formatear su tarjeta SD, asegúrese de que todavía esté ext4 Y vuelva a crear la carpeta dalvik-cache antes de iniciar su teléfono por primera vez.
Hay algunos buenos Howtos disponibles, que pueden resultar útiles para resolver su problema:
De acuerdo con varios hilos del foro, A2SDGUI - Darktremor A2SD GUI debería ser la aplicación preferida para mover el caché de Dalvik a su tarjeta SD.
iBug