web-dev-qa-db-fra.com

Comment formater une clé USB (clé USB) avec FAT32 pour une utilisation sous Linux et Windows?

Je souhaite formater une clé de mémoire pour transférer des données entre Windows 7 et un serveur Ubuntu hors réseau (Precise).

Je ne suis pas sûr que l'une des deux manières que j'ai essayées soit correcte, même si je peux lire et écrire sur le lecteur sur les deux ordinateurs.

Je reçois une liste très étrange des partitions de fdisk si je formate le lecteur sous Windows (à l'aide de l'outil de gestion des disques), mais cela semble être OK en termes de lecture et d'écriture sous Linux et Windows.

image showing the output of fdisk for a windows formatted drive

et cfdisk rapports

FATAL ERROR: Bad primary partition 1: Partition begins after end-of-disk.

Si, en tant que , un avocat , j'utilise cfdisk pour créer une partition principale à disque complet de type b (ou fdisk pour créer une partition commençant au bloc deux -mille et quelque chose) et ensuite émettre

Sudo mkfs.vfat -n some_label /dev/sdf1

alors Windows ne reconnaîtra pas le système de fichiers (après y avoir réfléchi longuement).

Linux et Windows se feront un plaisir de lire et d’écrire une plongée de 2 Go si je crée la même partition, mais émettez ensuite:

Sudo mkfs.vfat -I -n some_label /dev/sdf

mais cela rend la partition de disque complet affichée comme étant de l'espace libre dans cfdisk et fdisk et Windows n'aime pas le lecteur de 16 Go.

J'ai aussi essayé d'utiliser parted, mais Windows n'est jamais satisfait des partitions que je crée sous Linux.

Je crains que, même si le lecteur semble fonctionner, je puisse découvrir que les données ne sont pas transférées fidèlement.

J'utilise des lecteurs SanDisk Cruzer d'âges, de saveurs et de tailles variées.

Est-ce la bonne façon de formater sous Windows et d'ignorer les problèmes rencontrés par cfdisk et fdisk ou existe-t-il une autre façon correcte de rendre tout le monde heureux avec le lecteur?

11
jah

Windows utilisera souvent des supports externes, tels que des clés USB, de manière non partitionnée - autrement dit, il n'y a pas de table de partition et le système de fichiers est écrit. le disque entier . Si votre disque est configuré de cette manière, vous devez utiliser /dev/sdf directement, comme dans:

mount /dev/sdf /mnt

Vous pouvez utiliser mkfs, fsck et d'autres outils de la même manière. Vous pouvez utiliser blkid pour vérifier cela, comme dans blkid /dev/sdf. S'il vous dit que /dev/sdf est un système de fichiers FAT (ou un autre), mon hypothèse est correcte.

Si le disque ne contient aucune donnée que vous souhaitez conserver et que vous souhaitez créer un nouveau système de fichiers dessus, vous pouvez le faire sur tout le disque ou utiliser fdisk, parted ou un autre outil pour créer un fresh (vide) table de partition. Dans fdisk, vous le feriez avec la commande o dans le menu principal. Cela effacera les "partitions" existantes (qui sont probablement juste une tentative désespérée de fdisk d'interpréter le premier secteur d'un système de fichiers FAT) et créeront une nouvelle table de partition vide. Vous utiliseriez ensuite n pour créer une nouvelle partition, enregistrez les modifications avec w et utilisez mkfs ou mkdosfs en dehors de fdisk pour créer un nouveau système de fichiers sur /dev/sdf1.

Notez que Windows ne reconnaît que la première partition d’un lecteur flash USB contenant une table de partitions. Ainsi, si vous souhaitez plusieurs partitions, assurez-vous que la première est celle qui sera accessible à partir de Windows.

9
Rod Smith