Microsofts exFAT ist unter Linux immer noch nicht wirklich brauchbar
Michael Larabel von Phoronix macht wenig Hoffnung, dass Unterstützung für Microsofts exFAT-Dateisystem im Linux-Kernel 3.3 landet. Extended File Allocation Table (exFAT) wurde von Microsoft speziell für Flash-Speicher-Geräte geschaffen, auf denen FAT32 oder NTFS nicht ideal ist. Die Linux-Unterstützung hat sich seit 2009 auch nicht wirklich verbessert.
Es gab Arbeiten an einem Kernel-Modul, dass nur Lese-Zugriff bieten sollte. Daran wird aber nicht aktiv gearbeitet. Es gibt allerdings ein FUSE-Modul für exFAT. Du findest es auf Google Code. Natürlich bringt es die selben Vor- und Nachteile wie andere FUSE-Dateisysteme mit sich.
Tuxera, die behaupten ihre NTFS-Lösung ist das Schnellste unter Linux, bietet ebenfalls eine Lösung an exFAT Embedded. Tuxera ist den legalen Weg gegangen und hat die entsprechenden Lizenzen besorgt. Die Firma bietet exFAT auch für Android-Geräte an.
Die Frage ist natürlich, ob es das wirklich braucht und man proprietäre Dateisysteme auf Linux nutzen muss oder möchte. Bei einer maximalen Größe von exFAT bis 64 Zebibyte (empfohlen 512 TByte) geht das derzeit eher in Richtung Server oder Cluster. Wenn ich aber einen Linux-Cluster habe, werde ich kein Microsoft-Dateisystem einsetzen. Man weiß nie, was die zukunft bringen wird. Aber sich darüber große Gedanken machen scheint derzeit etwas übertrieben.
Vielleicht kann mich ja jemand erleuchten, der mehr Einblick hat als ich, wofür man exFAT in Linux braucht.
Unter Linux garnicht. AFAIR sollte exAT urprünglich FAT32 ablösen.
Die SDXC-Karten, die Nachfolger der SDHC-Chips, setzen exFAT ein. Laut Wikipedia http://en.wikipedia.org/wiki/Secure_Digital#SDXC ist dies die von den Herstellern vorgenommene werksseitige Formatierung.
Grüße
Daniel
Wofür man exFAT unter Linux braucht ist eigentlich klar. Um auf Geräte zugreifen zu können die exFAT formatiert sind.
Im Moment mögen das nicht viele sein, aber meines Wissens werden fast alle neuen Geräte die SD-Karten im SDXC Format benutzen diese mit exFAT formatieren, so wie heute alle SD-Karten in Kameras und anderen Geräten FAT32 formatiert sind.
Wieso braucht Linux einen exFAT Treiber?
FAT32 hat eine Beschränkung auf max. 4GB pro Datei. Für z.B. HD-Videoaufnahmen ist das zu wenig. Deshalb soll die nächste Generation SD-Karten (SDXC) mit exFAT formatiert sein (siehe http://de.wikipedia.org/wiki/SDXC#SDXC_.28SD_3.0.29 ). Nutzt man die SD-Karte nur an Rechnern, so kann man sie natürlich auch anders formatieren (z.B. ext4). Normalerweise werden SD-Karten aber in Embedded Geräten wie z.B. Fotokameras, Videokameras oder Smartphones verwendet. Dort ist man auf das beschränkt, was das Gerät unterstützt und das wird wohl im Zweifelsfall nur exFAT sein [1]. Will man die SD-Karte beispielsweise in eine Videokamera stecken, so muss man sie also als exFAT formatieren. Und um die aufgezeichneten Videos auf einen Linux-Rechner übertragen zu können muss also auch dieser exFAT unterstützen.
[1] Ein Gerät, dass die Karte zwar hardwaretechnisch ansprechen kann, aber kein exFAT beherscht, dürfte dann auch nicht als SDXC-kompatibel beworben werden
Man könnte auch die Gegenfrage stellen, warum man die Karten überhaupt mit einem proprietären Dateisystem formatieren muss - Alternativen gäbe es ja genug, die mit mehr als 4 GByte Dateigröße umgehen können - nur würde das den Lobbyisten in die Suppe spucken ...
Natürlich hätte es bei der Standardisierung von SDXC aus Nutzersicht bessere Alternativen gegeben. Aber für die SD Card Association wird einfach nur wichtig gewesen sein, dass das Dateisystem unter Windows ohne weitere Installation läuft. Und da bleiben nun mal nur exFat oder NTFS (UDF macht glaube ich immer noch abseits von optischen Datenträgern Probleme unter Windows, aber vielleicht hat sich da ja was gebessert). Und Microsoft hat auf die Weise mal wieder eine völlig veraltete Technik in den Markt gedrückt, auf welche sie auch noch Patente beantragt haben.
Nur was bringt es, wenn man nun unter Linux die exFAT-Unterstützung schleifen lässt? Davon wird die Verbreitung von SDXC und exFAT wohl kaum zu verlangsamen oder stoppen sein. Die nicht-marktbeherrschende Software muss halt immer die Formate der marktbeherrschenden Software unterstützen um konkurrenzfähig zu sein, nicht anders herum...
Ich würde die Frage umgekehrt stellen:
Nachdem Geräte unter Linux einfach mit Anstecken funktionieren, Windows aber immer als Erstes einen Treiber installieren will: Warum baut man den Dateizugriff für Windows also nicht einfach in den Treiber ein? - Dann ist es nämlich piepegal, mit welchem Dateisystem die Karte in der Kamera formatiert ist.
Der nächste Vorteil wäre, dass jemand (also angeblich 99 % der Nutzer) mit der Karte alleine nichts anfangen kann ohne Kamera und Treiber.
Womit wir zur nächsten Frage kommen, weil Kameras ja überhaupt nie gestohlen werden, und oft der (idelle) Wert des Bildmaterials den der Kamera übersteigt (bis hin zur Privatsphäre): Warum verwenden Kameras nicht z.B. xfs und encfs für Verschlüsselung der Bilder?
Ich finde es jedenfalls sehr seltsam, dass Kamerahersteller gerne einen Teil ihrer Einnahmen an Microsoft abliefern, und das offenbar mit Freuden! (Ich gehe davon aus, dass auf den meisten Kameras ohnehin ein embedded Linux läuft...)
Alle die Linux nicht kennen, ihren USB-Stick mit exFat formatieren und sich dann bei einem ihrer Freunde über darüber beschweren weil dieses Linux nicht einmal ihren USB-Stick lesen können....
Der wichtigste Grund wurde noch gar nicht genannt. Allen Journaling Lösungen wie NTFS, ext3, ext4 etc. ist eines gemeinsam: sie schreiben zu oft und zu viele Meta-Daten auf Speichermedien, die nicht für häufiges Schreiben ausgelegt sind. Wenn man auf eine Datei lesend zugreift werden schon die Meta-Daten aktualisiert. Die Lebensdauer dieser Speichermedien leidet demzufolge unter dem Vorteil des Journalings. Die FATx Derivate haben das Problem, dass der Gesamtdatei-Index immer an ein und der selben Flash-Speicherstelle geschrieben wird - auch wenn man nur ein einziges Byte im Dateisystem ändert. Auch hier wird die Lebensdauer speziell dieser Speicherzelle dramatisch eingeschränkt.
All diese Probleme hat exFAT nicht. Somit ist exFAT derzeit das mir einzig bekannte Dateisystem, dass sich der Problematik von Flash-Speicher überhaupt annimmt. Demzufolge braucht Linux entweder eine von Herstellern unterstützte, alternative Lösung oder es wird auch längerfristig aus einem Anwendungsfeld des Otto-Normal-Users herauskatapultiert. Die fehlende exFAT-Unterstützung ist bei mir u.a. ein Grund dafür, dass mein Entwicklersystem zwar ein Linux ist, aber meine privaten Daten und Anwendungen grundsätzlich auf einem Windows laufen müssen.
nutze exfat auf meiner externen festplatte, da es problemlos auf mac osx und windows 7 funktioniert und auch keine 4gb grenze hat.
es wäre wunderbar zum dateien austauschen, wenn es jetzt auch noch auf allen linux rechnern funktionieren würde ... man kann nicht alles haben.
Ich hatte mich vorher ein wenig schlau gemacht und dann auf meinen Datenträgern die nicht zum Windowssystem gehörten, exFAT eingesetzt.
Die Erfahrung aus der Praxis heraus: ALLE meine Datenträger die ich mit exFAT betrieben habe machten über kurz oder lang Probleme. Im weiteren nahmen die Probleme dann dramatisch zu je intensiver der Speicherplatz genutzt wurde. Ich habe da keine großen Tests mehr gemacht und mich von exFAT wieder getrennt. Ich habe in der kurzen durch exFAT mehr Daten verloren als durch NTFS während der letzten 10 Jahre.
Sicherlich wird es irgendwann ein systemübergreifendes Dateisystem geben, aber ob das exFAT sein wird, das bezweifle ich in Hinblick auf den momentanen Entwicklungsstand...