6 votos

¿Qué contiene el directorio /mnt/asec?

¿Qué es lo que /mnt/asec que contiene el directorio de Android? ¿Alguien puede explicarlo en pocas palabras?

4voto

Andy Yan Puntos 501

Pensé que Google tendría una definición oficial sobre los desarrolladores de Android, pero sorprendentemente no. Así que con un poco de Google desenterré esto:

Internos de Seguridad de Androids: Una guía detallada de la arquitectura de seguridad de Android

Mira alrededor del P80 para ver el contenido relacionado. Por lo que tengo entendido, ASEC (Android Secure External Cache) se implementó en una época en la que los dispositivos Android vienen con un almacenamiento limitado y tienen que recurrir a un almacenamiento externo (es decir, una tarjeta SD) para las aplicaciones, y su propósito es almacenar de forma segura parte de las aplicaciones para evitar la corrupción y la piratería mediante la copia del contenido de la tarjeta SD.

Wikipedia también tiene un poco de introducción aquí .

3voto

Akhil Puntos 2521

En realidad se usa para lograr la función "Mover a la tarjeta SD".

Tome una aplicación de muestra llamada com.sample.app .

Cuando se instala una aplicación, se crea una nueva carpeta con el nombre de la aplicación /data/com.sample.app que contiene los datos privados de la aplicación. De manera similar, la propia APK está contenida en /data/app/com.sample.app1.apk

Cuando movemos la aplicación a un almacenamiento externo,

  1. No será trasladado a /mnt/sdcard/ partición. Android creará una nueva carpeta en /mnt/asec partiton llamado /mnt/asec/com.sample.app .
  2. También copiará el APK de /data/app/com.sample.app1.apk a /mnt/asec/com.sample.app/com.sample.app1.apk

0 votos

Gracias por su respuesta. Tengo algunas preguntas más. La partición /mnt/asec está montada en tmpfs. También si la aplicación se mueve a sdcard, siempre existirá en la partición /mnt/asec . nunca se moverá a la partición sdcard. ¿Es correcto mi entendimiento?

1voto

7Tonin Puntos 11

Por un lado, cuando navego por mi Android rooteado a través de adb shell, llego aquí:

/data/data/com.sample.app

Entonces ls -al da :

drwxrwx--x u0_a25   u0_a25            2018-10-28 23:52 cache
drwxrwx--x u0_a25   u0_a25            2018-10-29 00:36 files
lrwxrwxrwx install  install           2018-10-29 09:48 lib -> /mnt/asec/com.sample.app-1/lib
drwxrwx--x u0_a25   u0_a25            2018-10-29 07:45 shared_prefs

Por otro lado, a través de la conexión USB, obtengo dos puntos de montaje:

mtp:/Y330-U01/Phone storage/
mtp:/Y330-U01/SD card/

El siguiente directorio mtp:/Y330-U01/Carte SD/.android_secure/ parece vacía. ¿Está realmente vacío?

Al conectar directamente la tarjeta SD en el PC (a través del adaptador USB micro SD) el directorio .android_secure/ parece contener: com.sample.app-1.asec

Así que en mi opinión /mnt/asec es un punto de montaje para /mnt/asec/com.sample.app-1/ puntos de montaje, lo que lleva a .android_secure/*.asec archivos de imagen de disco seguros (o algo así...)

0 votos

Así es como aparece en el emulador API_19: /init.rc: mount tmpfs tmpfs /mnt/asec mode=0755,gid=1000

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X