Después de rootear e instalar link2sd en mi HTC Explorer , todavía tengo problemas de poca memoria.
En Google Play, no puedo descargar aplicaciones de más de 10-15M. Esto se debe a que la carpeta /cache está en la memoria interna, que es desesperadamente pequeña. En mi versión, Google Play escribe directamente en /cache, no en subcarpetas.
Usando adb como root, eliminé /cache
y creé un enlace simbólico /cache -> /mnt/sdcard/cache
. Esto está bien, pero cuando reinicio el teléfono, el enlace simbólico se reemplaza por la carpeta anterior.
¿Hay alguna forma adecuada de resolver este problema de una vez por todas?
Gracias por cualquier pista, A.
Por desgracia, eso no es posible.
Al menos no sin actualizar la tabla de particiones del HTC (que se encuentra en la sección del gestor de arranque, también conocida como hboot). Aparentemente no hay un hboot modificado para el explorador. Solo conozco hboots reparticionados para el HTC Desire.
Razón:
/cache está respaldado por un dispositivo de bloque separado en todos los dispositivos Android (es decir, punto de montaje o partición), es necesario para almacenar archivos de actualización de firmware (por ejemplo, definitivamente necesario para teléfonos encriptados). Entonces, si lo mueve, no hay ganancia porque esa partición aún estará allí y no liberará espacio para la partición /data. En caso de que reduzca la partición /cache, las actualizaciones OTA ya no serán posibles (tendrá que usar una recuperación personalizada para hacerlo).
Es posible que desee echar un vistazo a DirectoryBind , que fue desarrollado para cosas como esta. Se ocupa de los "montajes" configurados por el usuario en el momento del arranque y también bajo demanda, por lo que nada debería "desaparecer" en un arranque.
Básicamente, está destinado a mapear cosas desde el almacenamiento interno/del teléfono al almacenamiento externo/sd, especialmente para casos como el suyo, donde la memoria interna se está agotando.
NOTA: Según la respuesta de ce4 , este método no generará ningún beneficio con respecto a la /data
carpeta, ya /cache
que usa su propia partición (esto parece aplicarse a todos los dispositivos Android, verificado con 7 dispositivos diferentes de 5 fabricantes diferentes; según ce4 esto es especialmente necesario en dispositivos cifrados, ya que se requiere una partición no cifrada para almacenar actualizaciones de firmware para su ejecución). Entonces, si su preocupación es aumentar el almacenamiento en /data
, esto no funcionará con /cache
. Pero si simplemente necesita más espacio en /cache
, debería estar perfectamente bien. Luego podría usar el dispositivo de bloque original (donde /cache
apuntaba ) para otra cosa;)
NOTA 2: AFAIK Google Playstore utiliza /data/local
para almacenar en búfer sus descargas. En la mayoría de los dispositivos, esto solo debería ser un directorio en la partición y, por lo tanto, DirectoryBind/data
podría manejarlo fácilmente .
Sugerencia adicional: verifique con el df
comando desde una terminal si el directorio que desea mover del almacenamiento interno al externo está usando una partición separada o no.
t0mm13b
mount -o bind /mnt/sdcard/cache /cache
... esto es en teoría como nunca lo he probado...