21 votes

Puis-je utiliser ext4 sur ma carte SD dans un téléphone non rooté ?

Je sais que sur un téléphone enraciné, il est raisonnablement normal de créer une petite partition ext4 pour que App2SD l'utilise, mais je ne demande pas pour ce cas : J'ai un HTC Desire non rooté fonctionnant sous Froyo, et j'aimerais formater la totalité de ma carte SD en ext4 au lieu de FAT. Je suis conscient que cela signifie que les PC Windows ne seront pas en mesure d'utiliser la carte, mais tous mes PC fonctionnent sous Linux, donc tout devrait bien se passer. Le téléphone pourra-t-il accéder à la carte et l'utiliser dans ce cas ?

5voto

Catch22 Points 1240

En fait, j'avais ma carte SD sur ext4 et je l'ai montée en permanence au démarrage (j'ai Root sur mon téléphone).

Le plus gros problème était que les applications ne s'attendent pas à ce que les permissions soient vérifiées sur /sdcard, mais extX l'impose (aucune option de montage ne permet de contourner ce problème). Ainsi, si une application y stocke par exemple de l'audio et appelle un autre sous-composant pour le lire, cela échoue.

Il en va de même pour les photos (l'appareil photo les prend en photo, un prévisualisateur peut vouloir y accéder).

Vous pouvez corriger cela manuellement, mais vous devez le faire après chaque nouveau fichier créé... Il y aurait une vraie solution à cela, mais elle nécessite une modification du système : laisser les applications s'exécuter avec umask(002) au lieu de 022. Android est un UPG (User Private Groups), donc il n'y a pas de grand mal à le faire. - Maintenant, les applications pourraient choisir si elles veulent exposer les fichiers à d'autres personnes en réglant le groupe sur "sdcard", ou non. Cela permettrait également d'ajouter une séparation forcée là où les applications le souhaitent.

4voto

DocMax Points 5744

Ext4 devrait être supporté si vous avez une mise à jour vers Android 2.3 ou 3.0 (je vois que votre message date de juste avant les versions 2.3 & 3.0...).

...et quand btrFS sera ajouté à Android, il aura une belle option de montage ",ssd" avec wear-levelling etc que ext4 n'a pas... et plus de vitesse que ext4 maintenant, esp si vous utilisez ",compress=lzo" OU ",space_cache" dans fstab (mais n'utilisez pas la compression AVEC l'option space_cache, utilisez seulement 1 ou l'autre ou sinon il ralentit à une rampe dans certains benchmarks) -- et cette vitesse vient malgré btrFS checksumming de toutes les données (pas seulement des journaux, comme ext4 fait) :-)

3voto

Andrew Aylett Points 381

Il semble que la réponse soit "non" :(. Je demandais parce que j'ai une nouvelle carte à mettre dans le téléphone, alors j'ai pensé que je devais essayer -- ça n'a pas marché. Quand je demande au téléphone de monter sa carte, il va directement dire "Carte SD sûre à retirer".

Oh bien.

2voto

Tombart Points 119

Réponse courte : no .

Bien que sous Android 5 cat /proc/filesystems montre que ext4 est pris en charge, il semble que seul FAT32 et exFAT (FAT64) sont prises en charge sur les appareils non enracinés. J'ai essayé de monter une carte micro SD de 64 Go en exFAT sans succès.

使用方法 fdisk vous pouvez formater votre carte en FAT32 (les fichiers de plus de 4 Go ne sont pas pris en charge) :

$ fdisk -H 224 -S 56 /dev/mmcblk0

  • d supprimer la partition précédente
  • n nouvelle partition, puis sélectionner la partition primaire p et le début du secteur par défaut, par exemple à 2048
  • t set c pour FAT32
  • (ici vous pouvez économiser quelques secteurs en passant en mode expert. x et le déplacement du début de la partition b )
  • w écrire des changements

Formatez ensuite en FAT32, en utilisant votre nombre de secteurs réservés ( 2048 )

$ mkfs.vfat -F 32 -s 32 -R 2048 -v /dev/mmcblk0p1

  • -F 32 pour FAT32
  • -s 32 taille des clusters exprimée en secteurs, donc 32 x 512 octets = clusters de 16KB
  • -R 2048 nombre de secteurs réservés

De cette façon, la carte de 64 Go peut être montée en utilisant FAT32, je n'ai pas réussi à trouver un formatage fonctionnel pour exFAT ou ext4.

1voto

neoedmund Points 111

J'ai essayé LineageOS 14.1(Android 7.1.2), il supporte les sdcard(tf-card) formatées en ext4. Bien qu'il formate les sdcard en vfat par défaut, si vous ne faites pas de patch. Le moyen le plus simple est de formater la sdcard avec ext4 en utilisant un adaptateur usb-sdcard externe, puis d'insérer la sdcard dans le téléphone avec LineageOS installé.

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