[[Vorlage(Getestet, bionic, focal, jammy, lunar)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte erlangen] }}} [[Inhaltsverzeichnis(1)]] [wikipedia:File_Allocation_Table#exFAT:exFAT] ('''Ex'''tended '''F'''ile '''A'''llocation '''T'''able), ist ein proprietäres [:Dateisystem:], optimiert für den Einsatz auf [wikipedia:Flash-Speicher:Flash-Speichern]. Der Hauptvorteil gegenüber dem älteren [wikipedia:File_Allocation_Table:FAT/FAT32]-Dateisystem ist die Unterstützung von Dateien mit mehr als 4 GiB Größe. Da Microsoft gewisse Vorbehalte (Lizenzübereinkunft, Patente) bezüglich der freien Verwendung hat, bieten die offiziellen Paketquellen exFAT-Unterstützung nur in der Sektion ''universe'' an. Daher befindet sich exFAT vor [:20.04:] nicht im Linux-Kernel, sondern es läuft via FUSE. Die weitere Konfiguration von FUSE-spezifischen Einstellungen (z.B. die Option `user_allow_other`) ist im Wiki-Artikel [:FUSE:] ausführlich beschrieben. Speicherkarten (Memory-Stick, SD) stoßen bei 32 GiB mit FAT/FAT32 an ihre jeweiligen Grenzen. Daher sehen die Spezifikationen z.B. für die zukünftigen Memory-Stick-XC- und SD-XC-Flashspeicher-Kartentypen die Verwendung des exFAT-Dateisystems vor. Möchte man also eine solche Speicherkarte unter Linux auslesen, muss exFAT installiert werden. Andernfalls wird auf dem Datenträger kein Dateisystem erkannt. exFAT ist zwar moderner als das FAT32-Dateisystem, soll aber kein Nachfolger für FAT/FAT32-Dateisysteme werden. Es ist nur für Flash-Speicher optimiert. Es ist simpler als [wikipedia:NTFS:] und langsamer, besonders auf herkömmlichen Magnet-Festplatten. = OS-Kompatibilität = * Windows Vista: ab Service Pack 1 * Windows 7 und neuer: nativ * Mac OS: benötigt Mac OS X Version 10.6.4 und höher * Ubuntu: seit [:12.04:Ubuntu 12.04] in den offiziellen Paketquellen, s.u., seit [:20.04:] Kernel-Unterstützung, keine Treiberinstallation mehr notwendig = Vorteile des exFAT Dateisystems = * exFAT erlaubt Dateien mit mehr als 4 GiB Dateigröße, FAT/FAT32 dagegen nicht * exFAT verwendet Dateinamen in [wikipedia:Unicode:] und bis zu 255 Zeichen. Kurze 8.3-Namen gibt es nicht mehr. * Die maximale Cluster-Größe beträgt 32 MiB, daher auch für sehr große Datenträger geeignet * exFAT verwendet nur eine FAT-Tabelle. Das spart Platz und Verwaltungsaufwand, reduziert aber die Datensicherheit. Obwohl als Dateisystem für "normale" Festplatten im täglichen Gebrauch nicht geeignet, hat exFAT in bestimmten Anwendungsfällen dennoch möglicherweise Vorteile: * Es sind im Gegensatz zu FAT/FAT32 Dateien mit mehr als 4 GiB möglich * Im Gegensatz zu NTFS/ext4 braucht man keine Benutzerrechte zu verwalten * Es bietet gute Transferraten beim rein linearen Beschreiben = Installation = Die exFAT-Treiber können aus den offiziellen Paketquellen installiert [1] werden: Bis Ubuntu 21.10: {{{#!vorlage Paketinstallation exfat-fuse, universe exfat-utils, universe }}} Ab Ubuntu 22.04: {{{#!vorlage Paketinstallation exfat-fuse, universe exfatprogs, universe }}} = Verwendung = Nun kann exFAT wie üblich genutzt werden: * `mount -t exfat ...` (siehe [:mount:]) * `mkfs -t exfat ...` (siehe [:Formatieren:]) * `fsck ...` (siehe [:Dateisystemcheck:]) == Beispiele == Die ersten beiden Beispiele sind für Nicht-Computer ggf. ungeeignet, da diese meist eine MBR-Partitionierung und nur eine bestimmte Clustergröße verlangen. Sinnvoll ist das aber für eine externe Festplatte, wo man wenige, sehr große Dateien unterbringen möchte. 1. Ein Flash-Speicher unter '''/dev/sdd1''' soll als exFAT formatiert werden [3][4]: {{{#!vorlage Befehl sudo mkfs -t exfat /dev/sdd1}}}{{{ mkexfatfs 1.0.1 Creating... done. Flushing... done. File system created successfully. }}} 1. Oder man schreibt das Dateisystem nicht in die erste Partition, sondern direkt auf das Gerät, vergibt den Datenträger-Namen "SD-Karte" und setzt die Clustergröße auf 1 MiB (`-s 2048`) hoch (Default ist 4k = `-s 8`): {{{#!vorlage Befehl sudo mkfs.exfat -n "SD-Karte" -s 2048 /dev/sdd }}} 1. Das ausgehängte Dateisystem kann mit `fsck` überprüft werden: {{{#!vorlage Befehl sudo fsck /dev/sdd}}} {{{ fsck from util-linux 2.20.1 exfatfsck 1.0.1 Checking file system on /dev/sdd. File system version 1.0 Sector size 512 bytes Cluster size 1 MB Volume size 932 GB Used space 9944 KB Available space 932 GB Totally 0 directories and 0 files. File system checking finished. No errors found. }}} Hier kann man auch sehen, dass die Clustergröße 1 MiB ist. = Links = * [github:relan/exfat:Projektseite] {en} * [:Dateisystem:] {Übersicht} Übersichtsartikel #tag: Dateisystem, System