dosfstools
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 20.04 Focal Fossa
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Das Paket dosfstools enthält Programme zum Anlegen, Formatieren, Überprüfen, Reparieren sowie Verwalten von MS-DOS- bzw. FAT-Dateisystemen. Dieses Paket verfolgt hinsichtlich der Bedienung einen anderen Ansatz als das funktional ähnliche Paket mtools: Während mtools für jeden Dateisystem-Befehl aus MS-DOS unter UNIX einen ähnlich lautenden (z.B. mdir statt dir) Befehl bereitstellt, versucht sich dosfstools in die UNIX-Welt zu integrieren, indem es mächtige generelle Befehle wie mkfs oder fsck um spezifische Fähigkeiten für die MS-DOS-Dateisysteme erweitert.
Installation¶
Es genügt die Installation des Pakets dosfstools aus den offiziellen Paketquellen [1]:
dosfstools
Befehl zum Installieren der Pakete:
sudo apt-get install dosfstools
Oder mit apturl installieren, Link: apt://dosfstools
Nach der Installation stehen neue Programme/Befehle für MS-DOS-Dateisysteme zur Verfügung:
mkfs.fat (Alias mkfs.msdos, mkfs.vfat, mkdosfs) zum anlegen/formatieren
fsck.fat (Alias fsck.msdos, fsck.vfat, dosfsck) zum überprüfen und reparieren
fatlabel (Alias dosfslabel) zum benennen (Label)
MS-DOS-Dateisysteme allgemein¶
Unter MS-DOS-Dateisystem (auch: FAT-Dateisystem) wird hier eines der von Microsoft entwickelten Dateisysteme mit Blockzuweisungstabellen (file allocation table, FAT) verstanden. Die gebräuchlichen Varianten unterscheiden sich in der verfügbaren Bitlänge zur Speicherung der Blocknummern (Details siehe unter Links):
12-Bit: veraltet, gelegentlich MSDOS genannt
16-Bit: meist FAT oder FAT16 genannt
32-Bit: FAT32, oft auch fälschlich VFAT genannt
exFAT: Weiterentwicklung, von Microsoft durch Softwarepatente geschützt, durch dosfstools nicht unterstützt, aber beispielsweise über das Paket exfat-utils. Microsoft hat für Linux ab Kernel 5.7 über das OIN (Open Invention Network) exFAT kostenfrei gestellt.
Die Namensteile fat
, vfat
und msdos
sind jedoch aus Sicht von dosfstools Synonyme, d.h dosfstools unterscheidet diese FAT-Varianten nicht über diese Namensteile! Die FAT-Variante wird in der Regel automatisch bestimmt oder muss über die Option -F
(siehe unten) festgelegt werden.
Bedienung¶
Anlegen eines MS-DOS-Dateisystems¶
Ein Dateisystem anlegen kann man mit mkfs.fat, welches man wahlweise direkt aufrufen[3][4][2] kann
sudo mkfs.fat [OPTIONEN-FAT] /dev/sda9 [BLOCK-ANZAHL]
oder über das generelle mkfs
sudo mkfs --type fat [OPTIONEN-ALLGEMEIN] [OPTIONEN-FAT] /dev/sda9 [BLOCK-ANZAHL]
Die zu formatierende Partition, hier beispielhaft /dev/sda9, muss natürlich individuell angepasst werden.
[OPTIONEN-ALLGEMEIN]
, [OPTIONEN-FAT]
und [BLOCK-ANZAHL]
sind optional:
[OPTIONEN-ALLGEMEIN]
ist durch die gewünschten, von der Art des Dateisystems unabhängigen Optionen des Programms mkfs zu ersetzen.[OPTIONEN-FAT]
ist durch die für FAT-Dateisystem spezifischen Optionen des Programms mkfs.fat zu ersetzen; die wichtigsten sind:
Wichtige Optionen für das Programm mkfs.fat | |
Option | Wirkung |
-c | Überprüfe das Gerät vor dem formatieren auf fehlerhafte Stellen (bad blocks). |
-F FAT-SIZE | Die Bitlänge eines FAT-Eintrags festlegen. FAT-SIZE ist 12, 16 oder 32. |
-i VOLUME-ID | 32-Bit-Kennung VOLUME-ID (z.B. 1122-ABCD) in den Boot-Sektor schreiben. |
-n VOLUME-NAME | Filesystem Label schreiben. (Siehe MS-DOS-Dateisystem benennen) |
-S LOGICAL-SECTOR-SIZE | Die Größe eines Filesystem-Clusters festlegen. LOGICAL-SECTOR-SIZE ist eine Potenz von 2 im Bereich: 512 … 32768 |
-v | Meldungen während der Formatierung ausgeben. |
[BLOCK-ANZAHL]
ist meistens leer; dann wird die in der jeweiligen Situation maximal mögliche Blockanzahl erzeugt.
Pflegen eines MS-DOS-Dateisystems¶
Hierzu dient fsck.fat, welches ein FAT-Dateisystem überprüft und optional auch repariert. Es wird entweder direkt aufgerufen[3][4][2] mit
sudo fsck.fat [OPTIONEN-FAT] /dev/sda9
oder über das generelle Programm fsck mit
sudo fsck --type fat [OPTIONEN-ALLGEMEIN] [OPTIONEN-FAT] /dev/sda9
Meist kann fsck den Dateisystem-Typ selbst erkennen, dann reicht auch aus:
sudo fsck [OPTIONEN-ALLGEMEIN] [OPTIONEN-FAT] /dev/sda9
Für [OPTIONEN-ALLGEMEIN]
und [OPTIONEN-FAT]
gelten die Hinweise entsprechend wie im Abschnitt Anlegen eines MS-DOS-Dateisystems. Wichtige Optionen von fsck.fat sind:
Wichtige Optionen für das Programm ckfs.fat | |
Option | Wirkung |
-a | automatische Reparatur (ohne Rückfragen) |
-r | Reparatur nach Rückfrage |
-b | Prüfung des Boot-Sektors (nur lesen) |
-v | Meldungen während der Überprüfung ausgeben. |
-V | Nach der Reparatur automatisch einen 2. Durchgang zur Verifizierung starten. |
MS-DOS-Dateisystem benennen¶
Das Label eines FAT-Dateisystems kann man sich anzeigen lassen mit fatlabel:
sudo fatlabel /dev/sda9
Das Label verändert man mit:
sudo fatlabel /dev/sda9 NEUES-LABEL
NEUES-LABEL
ist eine maximal 11-stellige Octet-Folge, die nur die bei FAT-Dateisystemen für kurze (sog. 8.3) Dateinamen gültigen Zeichen enthalten darf: Aus dem Bereich 0-127 die Großbuchstaben A-Z, Ziffern 0-9, einige Sonderzeichen «! # $ % & ' ( ) - @ ^ _ ` { } ~» und Leerzeichen, jedoch sind führende Leerzeichen verboten. Die aus Sicht des FAT-Dateisystems sämtlich erlaubten Zeichen aus dem Bereich 128-255 können bei MS-Windows-Systemen mit aktivierter Sprachunterstützung Fehler verursachen.
fatlabel kann auch Label schreiben, die nicht MS-DOS-konform sind. Man sollte das vermeiden, da es sonst bei der Verwendung eines solchen Dateisystems unter MS-Windows Probleme geben kann. Manche, nicht alle Versionen von fatlabel wandeln die Eingabe für ein Label automatisch in Großbuchstaben, weil die Verwendung eines Labels mit Kleinbuchstaben MS-Windows irritieren kann.
Hinweis:
Es gibt bei FAT-Dateisystemen zwei verschiedene Label:
Eintrag im Root-Dateiverzeichnis des FAT-Dateisystems als spezieller Dateiname und
manchmal zusätzlich Vermerk im "Extended Bios Parameter Block" im Boot-Sektor des FAT-Dateisystems
Das Label im Boot-Sektor befindet sich je nach Version und Hersteller an wechselnden Stellen und kann auch fehlen – daher wird fatlabel diesen Vermerk im Boot-Block bei sehr alten FAT-Dateisystemen nicht immer bearbeiten. Bei modernen FAT-Dateisystemen hält fatlabel die beiden Label synchronisiert.
Dateien im FAT-Dateisystem verwenden¶
dosfstools stellt – im Gegensatz zu mtools – außer den hier beschriebenen (und deren Synonymem) keine weiteren Befehle und auch keine GUI bereit.
Auf der Kommandozeile verwendet man die herkömmlichen GNU-Programme wie ls, cat, grep, rm etc. auch für Dateien in FAT-Dateisystemen. Die Programme chown, chgrp und chmod zur Bearbeitung der Besitzverhältnisse und der Zugriffsrechte funktionieren jedoch nur eingeschränkt, da FAT-Dateisysteme die Konzepte Besitzer und Rechte nicht kennen.
Mehrere GUI-Programme wie beispielsweise Gparted oder die Laufwerksverwaltung gnome-disks (eingedeutscht: Laufwerke) verwenden „unter der Haube“ dosfstools.
Dokumentation¶
Manpages von dosfstools:
man mkfs.fat
man fsck.fat
man fatlabel
weitere manpages:
man mkfs
man fsck
Links¶
dosfstools 🇬🇧