Comment changer le nom de volume d'un système de fichiers FAT32?


46

Je sais que je peux définir le nom du volume lorsque je formate la partition avec l' -noption de mkfs.vfat. Mais comment changer le nom sans formater?

Je veux surtout pouvoir utiliser des lettres minuscules et majuscules. Dans le pire des cas, je peux utiliser un outil Windows, mais Windows par défaut transforme toutes les lettres en majuscules (mais fonctionne correctement avec des lettres minuscules dans les volumes créés avec mkfs.vfat).


Réponses:


52

Dosfstools , qui fournit à mkfs.vfatand amis, fournit également fatlabel(appelé dosfslabeldans les versions antérieures) le changement d'étiquette.


Je vais essayer cela dans quelques jours. Savez-vous s'il peut enregistrer des lettres minuscules?
Den

Cela n'a pas fonctionné avec des lettres minuscules. Et après utilisation, je suis arrivé erreurs sur le système de fichiers ....
Den

dosfslabel n'est plus compatible avec les étiquettes minuscules à partir de la version 3.0.12 et est désormais rejetée dans la version 3.0.16
D McKeon

1
@DMcKeon: cela semble fonctionner dans la version 3.0.27, avec un avertissement.
Craig McQueen

blivet (au moins blivet3-data-3.1.3-3.el7) rejette les étiquettes minuscules pour les partitions EFI. dosfslabel (alias fatlabel, de dosfstools-3.0.20-10.el7) les accepte avec un avertissement. Donc, blivet est préemptivement ennuyeux.
volémoment

18

Pour ma clé USB mlabelne fonctionnait pas, mais fatlabeltravaillait!

fatlabel /dev/device

vous donne l'étiquette

fatlabel /dev/device NEW_LABEL

établit une nouvelle étiquette


Parce que nous étiquetons un système de fichiers et qu’il se trouve généralement sur une partition, voici ma commande: sudo fatlabel /dev/sdXN NewLabel( / dev / sdf1 , par exemple)
Mikolasan

4

Jetez un coup d’œil à la page ubuntu sur le changement de nom des lecteurs usb , c’est essentiellement:

mlabel -i <device> ::<label>

Merci! Modifiez les travaux de nom, mais il est transvormed à upercase: # mlabel -i / dev / sdc1 :: redsd # mlabel -i / dev / sdc1 -s :: Volume label est REDSD
Den

1
Les étiquettes des disques @Den FAT sont uniquement en majuscules
Matteo

1
@Matteo J'ai ici un HD Whit FAT32 qui ont des lettres majuscules et minuscules dans le nom: mlabel -VI / dev / sdb1 -s :: Volume label est miniTR
Den

1
@Den oui, FAT32 le supporte. Il s'agit probablement d'un lecteur au format FAT16.
Matteo

@ Mattteo Merci de m'avoir confirmé que je ne suis pas complètement idiot ;-) Le périphérique que j'essaie de renommer est une carte SD au format FAT32 de 15,9 Go.
Den

4

La solution consiste à utiliser mkdosfs (mkfs.vfat): il permet à l'utilisateur de spécifier le libellé du volume à l'aide de l'indicateur -n et les lettres minuscules sont conservées en minuscules, mais cet outil recrée le système de fichiers, de sorte que toutes les données sont perdues.

La solution non destructive ci-dessous est une combinaison des outils de ligne de commande mlabel et dosfslabel.

  1. Connectez l'appareil à l'ordinateur s'il n'est pas déjà connecté.
  2. Ouvrez une fenêtre de terminal.
  3. Exécuter blkid | grep ' TYPE="vfat"' and </proc/mounts grep ' vfat 'pour trouver le nom du périphérique (par exemple /dev/sdb1). Regardez autour de vous dans / média, etc. pour vous assurer que vous avez choisi le bon périphérique. En cas de doute, débranchez-le, réexécutez les commandes, voyez-le disparaître, rebranchez-le et réexécutez les commandes.
  4. Démontez le périphérique en exécutant umount /dev/sdb1(en remplaçant /dev/sdb1par le nom du périphérique trouvé ci-dessus). S'il a été monté et que le démontage a échoué, fermez certaines fenêtres, supprimez certains programmes (par exemple fuser -m /dev/sdb1) et relancez le démontage.
  5. Exécuter sudo env MTOOLS_SKIP_CHECK=1 mlabel -i /dev/sdb1 ::x(en remplaçant / dev / sdb1 par le nom du périphérique trouvé ci-dessus). Si le système ne trouve pas mlabel, installez-le en exécutant sudo apt-get install mtools, puis réessayez.
  6. Exécuter sudo dosfslabel /dev/sdb1 MyLabel(en remplaçant MyLabel par l’étiquette souhaitée et /dev/sdb1par le nom du périphérique trouvé ci-dessus). Ignorez les avertissements concernant les différences de secteur de démarrage. Si le système ne trouve pas dosfslabel, installez-le en exécutant sudo apt-get install dosfstools, puis réessayez.
  7. Exécuter blkid | grep ' TYPE="vfat"'et examiner sa sortie pour vérifier que l'étiquette a été modifiée correctement. Éventuellement, débranchez le périphérique, puis reconnectez-le. Le système le reconnaîtra et le montera sous / media / MyLabel, sans convertir les lettres minuscules de l'étiquette du volume en majuscules.

Veuillez noter qu'il y a une limite de 11 caractères sur la longueur d'une étiquette de volume VFAT. Si vous spécifiez une étiquette plus longue, elle sera tronquée. Il existe une autre restriction: l'étiquette ne peut contenir que quelques caractères ASCII: les lettres accentuées, etc. ne fonctionneront pas.


Merci pour votre longue réponse! Pouvez-vous expliquer ce que la commande en 5. fait exactement? Il met l'étiquette à «x»?
Den

2

Jusqu'ici, le seul moyen que j'ai trouvé de changer le nom du volume FAT en minuscules est de le modifier avec un éditeur hexadécimal (copier les premiers secteurs avec dd dans un fichier temporaire, le modifier et le recopier). Cela fonctionne bien jusqu'à présent (même avec FAT16) et ni fsck ni CHKDSK de Win7 ne se sont plaints. Mais pas de garantie bien sûr ;-)


2

Les commandes ci-dessus n'ont pas fonctionné pour moi sur Rasberry Pi / Rasbian Jessie 8. J'ai décidé d'y aller gparted.

Allez dans le menu: Partition / Label . Ecrivez le nom de votre choix puis cliquez sur le tuyau vert (appliquez).

Après la procédure, vous pouvez voir les détails masqués sous le signe "multiple" +. Il y a un total de commande autre:

 mlabel ::"LABEL_NAME" -i/dev/sda1

0

Pour une alternative graphique, gpartedcomporte un Label File Systemélément de menu pour de nombreux systèmes de fichiers, y compris VFAT. Il devient disponible après le démontage du système de fichiers.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.