fatlabel will display or change the volume label or volume ID on
the MS-DOS filesystem located on DEVICE. By default it works in
label mode. It can be switched to volume ID mode with the option
-i or --volume-id.
If NEW is omitted, then the existing label or volume ID is
written to the standard output. A label can't be longer than 11
bytes and should be in all upper case for best compatibility. An
empty string or a label consisting only of white space is not
allowed. A volume ID must be given as a hexadecimal number (no
leading "0x" or similar) and must fit into 32 bits.
Switch to volume ID mode.
Remove label in label mode or generate new ID in volume ID
-c PAGE, --codepage=PAGE
Use DOS codepage PAGE to encode/decode label. By default
codepage 850 is used.
Display a help message and terminate.
Show version number and terminate.
For historic reasons FAT label is stored in two different
locations: in the boot sector and as a special volume label entry
in the root directory. MS-DOS 5.00, MS-DOS 6.22, MS-DOS 7.10,
Windows 98, Windows XP and also Windows 10 read FAT label only
from the root directory. Absence of the volume label in the root
directory is interpreted as empty or none label, even if boot
sector contains some valid label.
When Windows XP or Windows 10 system changes a FAT label it
stores it only in the root directory -- letting boot sector
unchanged. Which leads to problems when a label is removed on
Windows. Old label is still stored in the boot sector but removed
from the root directory.
dosfslabel prior to the version 3.0.7 operated only with FAT
labels stored in the boot sector, completely ignoring a volume
label in the root directory.
dosfslabel in versions 3.0.7 - 3.0.15 reads FAT labels from the
root directory and in case of absence, it fallbacks to a label
stored in the boot sector. Change operation resulted in updating
a label in the boot sector and sometimes also in the root
directory due to the bug. That bug was fixed in dosfslabel
version 3.0.16 and since this version dosfslabel updates label in
Since version 4.2, fatlabel reads a FAT label only from the root
directory (like MS-DOS and Windows systems), but changes a FAT
label in both locations. In version 4.2 was fixed handling of
empty labels and labels which starts with a byte 0xE5. Also in
this version was added support for non-ASCII labels according to
specified DOS codepage and were added checks if a new label is
It is strongly suggested to not use dosfslabel prior to version
MS-DOS and Windows systems use DOS (OEM) codepage for encoding
and decoding FAT label. In Windows systems DOS codepage is global
for all running applications and cannot be configured explicitly.
It is set implicitly by option Language for non-Unicode programs
available in Regional and Language Options via Control Panel.
Default DOS codepage for fatlabel is 850. See following mapping
table between DOS codepage and Language for non-Unicode programs:
437 English (India), English (Malaysia), English (Republic
of the Philippines), English (Singapore), English
(South Africa), English (United States), English
(Zimbabwe), Filipino, Hausa, Igbo, Inuktitut,
Kinyarwanda, Kiswahili, Yoruba
720 Arabic, Dari, Persian, Urdu, Uyghur
775 Estonian, Latvian, Lithuanian
850 Afrikaans, Alsatian, Basque, Breton, Catalan,
Corsican, Danish, Dutch, English (Australia), English
(Belize), English (Canada), English (Caribbean),
English (Ireland), English (Jamaica), English (New
Zealand), English (Trinidad and Tobago), English
(United Kingdom), Faroese, Finnish, French, Frisian,
Galician, German, Greenlandic, Icelandic, Indonesian,
Irish, isiXhosa, isiZulu, Italian, K'iche, Lower
Sorbian, Luxembourgish, Malay, Mapudungun, Mohawk,
Norwegian, Occitan, Portuguese, Quechua, Romansh,
Sami, Scottish Gaelic, Sesotho sa Leboa, Setswana,
Spanish, Swedish, Tamazight, Upper Sorbian, Welsh,
852 Albanian, Bosnian (Latin), Croatian, Czech, Hungarian,
Polish, Romanian, Serbian (Latin), Slovak, Slovenian,
855 Bosnian (Cyrillic), Serbian (Cyrillic)
857 Azeri (Latin), Turkish, Uzbek (Latin)
866 Azeri (Cyrillic), Bashkir, Belarusian, Bulgarian,
Kyrgyz, Macedonian, Mongolian, Russian, Tajik, Tatar,
Ukrainian, Uzbek (Cyrillic), Yakut
936 Chinese (Simplified)
950 Chinese (Traditional)
dosfstools were written by Werner Almesberger
⟨firstname.lastname@example.org⟩, Roman Hodek ⟨Roman.Hodek@
informatik.uni-erlangen.de⟩, and others. The current maintainer
is Andreas Bombe ⟨email@example.com⟩.
This page is part of the dosfstools (Tools for making and
checking MS-DOS FAT filesystems) project. Information about the
project can be found at
⟨https://github.com/dosfstools/dosfstools⟩. If you have a bug
report for this manual page, see
⟨https://github.com/dosfstools/dosfstools/issues⟩. This page was
obtained from the project's upstream Git repository
⟨https://github.com/dosfstools/dosfstools.git⟩ on 2020-12-18.
(At that time, the date of the most recent commit that was found
in the repository was 2020-02-14.) If you discover any rendering
problems in this HTML version of the page, or you believe there
is a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
dosfstools 4.1+git 2017-10-01 FATLABEL(8)