3 votes

Comment lier le montage des dossiers "data" et "obb" d'une carte SD externe dans "/sdcard/Android" ?

Quelqu'un peut-il m'aider à monter mon Android/data y Android/obb dans mon stockage interne depuis mon stockage portable ? Je suis sur une ROM Pie. J'ai trouvé ça : Comment lier le montage d'un dossier dans /sdcard avec les permissions correctes ? mais je ne sais pas ce que je dois faire.

Quand je tape :

ls -dZ /sdcard

Je reçois

u:object_r:rootfs:s0 /sdcard

1voto

Irfan Latif Points 16863

Sous-répertoires dans /sdcard/Android/data o /sdcard/Android/obb (appelés répertoires privés des applications sur le stockage externe primaire) ont permissions synthétisées basées sur la structure du répertoire . Alors que les annuaires publics sur le reste du /sdcard ont des permissions fixes. Voir les détails dans Le parcours de stockage d'Android y Qu'est-ce que /storage/emulated/0/ ? .

Ma réponse à votre question : Comment lier le montage d'un dossier dans /sdcard avec les permissions correctes ? traite le dernier cas, c'est-à-dire le montage lié des répertoires publics qui sont partagés avec toutes les applications. Mais les répertoires privés ne peuvent pas être montés en liaison à partir d'un stockage externe avec des permissions fixes. Cependant, en utilisant la même approche, vous pouvez monter le répertoire privé de chaque application séparément.

Prenons l'exemple de l'application Termux. Ses répertoires privés ( Android/data/com.termux y Android/obb/com.termux ) appartiennent à l'UID de l'application Termux attribué lors de l'installation. Les moyens courants pour obtenir la valeur de l'UID est de lire à partir de /data/system/packages.list ou faire ls -ld /sdcard/Android/data/com.termux ou en utilisant stat commandement. Une approche simple est de monter le répertoire en tant que world-writable afin que chaque application puisse y écrire. Mais ce n'est pas une bonne idée de définir des permissions aussi ouvertes. Nous suivons donc la méthode d'Android : monter un répertoire à partir d'une carte SD externe en utilisant FUSE :

~# bindfs -u $(stat -c %u /sdcard/Android/data/com.termux) -g 9997 -p a-rwx,ug+rw,ug+X /mnt/media_rw/[UUID]/Android/data/com.termux /mnt/runtime/write/emulated/0/Android/data/com.termux
  • Pour plus de détails et d'options de montage, voir la réponse ci-dessus.
  • Remplacer /mnt/media_rw/[UUID] con /mnt/expand/[UUID]/media/0 si la carte SD est formatée en tant que Stockage Adoptable mais que les données ne sont pas migré .
  • De la même manière obb les répertoires peuvent être montés en liaison.
  • Si votre appareil prend en charge sdcardfs le même montage devrait se propager vers default y read émulé VIEWS également. Sinon, si votre appareil est plus ancien, vous pouvez lier le montage de la même manière à d'autres appareils. VIEWS .
  • Certaines applications préfèrent par défaut écrire des données privées sur un stockage externe secondaire (par exemple, une carte SD externe), de sorte que vous n'avez pas besoin de lier le montage de leurs données. data o obb les répertoires.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X