Bitte nutzt nicht exFAT für Switch microSD-Karten

Hier mal eine generelle Warnung vor der Nutzung des Dateisystems exFAT für microSD-Karten der Nintendo Switch, da die Problematik immer noch nicht allzu bekannt zu sein scheint. Die Nutzung von exFAT führt zu Datenverlust!

Update, 13.11.2019

Wer immer noch einen Beweis braucht: Pokémon Schwert und Schild führen zu Datenverlust auf exFAT-formatierten microSD-Karten.

Der Originalbeitrag folgt.

Einleitung

microSD-Karten über 32 GB (SDXC) werden per Standard mit dem Dateisystem exFAT ausgeliefert. exFAT wurde von Microsoft entwickelt und daher muss jeder, der dieses Dateisystem nutzt, Lizenzgebühren zahlen – dummerweise ist exFAT im SDXC-Standard vorgeschrieben, ergo haben Firmen gar keine andere Wahl. Das ist auch der Grund, weshalb Nintendo den exFAT-Support "on-demand" per Update nachreicht, sobald eine exFAT-formatierte microSD eingelegt wird – ansonsten müssten sie für jede verkaufte Switch Lizenzgebühren an Microsoft zahlen.

Worum geht’s?

Schon seit dem Start der Homebrew-Szene wird vor der Benutzung von exFAT für microSD-Karten für die Switch gewarnt, da dies langfristig zu Datenverlust führt. Der Grund ist, dass Nintendos FAT-Treiber fehlerhaft ist und laufend Dateien und Ordner ändert, selbst bei einfachen Lesevorgängen. Die Änderungen werden nie korrekt mit dem Dateisystem synchronisiert, was bedeutet, dass beim unsauberen Beenden einer Anwendung/einem Reboot/dem Herunterfahren die Datei-Handler verloren gehen und anschließend in der File Allocation Table fehlen. Das passiert auch bei FAT32.

Da exFAT im Gegensatz zu FAT32 über keine zweite Backup File Allocation Table verfügt, gehen die Daten und Ordner unwiederbringlich verloren.

Offizielle Anwendungen (wie Spiele) werden übrigens *normalerweise* immer sauber beendet, weshalb das Problem hier kaum auftritt. Datei-Handler sind pro-Applikation, weshalb das ganze aber auch normal bei einem erzwungenen Shutdown auftreten kann.

Was soll ich tun?

Wenn deine microSD-Karte in exFAT formatiert ist, empfehlen wir dir, alle Daten zu sichern und sie mit FAT32 (32 KB Cluster) zu formatieren. Unter Windows geht dies nicht mit dem Explorer, dazu muss stattdessen bspw. guiformat genutzt werden. Danach einfach alle Daten wieder zurückkopieren.

Was ist mit Daten > 4 GB?

Das ist gar kein Problem – offizielle Daten (wie Spiele) werden immer in 4 GB gesplittet. Für weitere Daten:

Nebenbei erspart ihr euch mit FAT32 das Problem mit dem lästigen Archiv-Bit, welches dafür sorgt, dass Homebrews Daten nicht lesen können.

Ich hab aber keine Probleme mit exFAT und nutze es schon seit xy Jahren!

Wenn dir jeder sagt, du sollst nicht über rote Ampeln laufen aber du hast es bisher die ganze Zeit getan und es ist nichts passiert, was würdest du dann machen?

Gerade in Bezug auf Neulingen finde ich es verantwortungslos, die eigene unfundierte Meinung wiederzugeben, nur weil einem selber "das ja nie passiert ist, also haben alle anderen Unrecht!". Musste ich leider schon viel zu oft lesen – deshalb auch dieser Beitrag hier.

In dem verlinkten GitHub-Issue und hier findet ihr zahlreiche bekannte Homebrew-Entwickler, darunter auch CTCaer von Hekate. Das sind alles Experten auf diesem Gebiet. Die sagen das nicht um euch zu ärgern! Wer nicht hören will sollte sich später auch nicht beschweren.

Warum reimplementiert Atmosphère den Treiber nicht einfach korrekt?

Es wurde sogar darüber gesprochen, allerdings ist das FS-Modul eines der größten und das wäre extrem viel Arbeit für etwas, was simpel mit einem Umformatieren der SD-Karte gelöst werden kann.