¿Puedo cambiar la ubicación del caché dalvik, por ejemplo, con un enlace simbólico?
9
Actualmente uso Link2SD ya que el almacenamiento interno 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é Dalvik se borra y cuando el teléfono se reinicia, ve 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 inicie el arranque y haga sus negocios? 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), todavía es muy recomendable que formatee su tarjeta SD a ext4 (o lo mismo que su /data) para asegurarse de que todo funcione multa.
Entonces vamos. Se recomienda una copia de seguridad completa de todas sus aplicaciones antes de continuar, aunque si se siente afortunado, no es obligatorio. Suponiendo que tiene un emulador de terminal para hacer los trabajos necesarios.
Primero, cree una carpeta a la que desee migrar su dalvik-cache. Luego chmody chownla nueva carpeta para que coincida /data/dalvik-cache. Si está ejecutando un sistema operativo Android habilitado con SELinux, no olvide cambiar los contextos de seguridad de manera correspondiente. correr
ls -dlZ /data/dalvik-cache
ls -lZ /data/dalvik-cache
para ver los permisos originales, propietario / grupos y contextos de seguridad de la carpeta dalvik-cache.
A continuación, copie todos los archivos de /data/dalvik-cachesu nueva ubicación, por ejemplo /storage/sdcard1/dalvik-cache. Puede usar el cp -acomando para preservar 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-cachey cree un enlace simbólico a la nueva ubicación usando
Eso es todo. Ya hemos terminado Reinicie su teléfono (no es obligatorio pero se recomienda).
Algunos avisos sobre este proceso:
Puede 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:
Nunca retire su tarjeta SD. Si vuelve a formatear su tarjeta SD, asegúrese de que siga siendo ext4 Y vuelva a crear la carpeta dalvik-cache antes de iniciar su teléfono por primera vez.
No tenía idea de cómo escribí esta respuesta integral cuando la volví a ver después de un año. Supongo que me he olvidado mucho de Android (que por supuesto es imposible).
iBug
1
Hay algunos buenos Howtos disponibles, que pueden ser útiles para resolver su problema:
Hay algunos buenos Howtos disponibles, que pueden ser útiles para resolver su problema:
Según varios hilos del foro, A2SDGUI - Darktremor A2SD GUI debería ser la aplicación elegida para mover el caché Dalvik a su tarjeta SD.
fuente