Upline: Infos & Dokus Administration Windows

Festplatte mit FAT32 formatieren unter Windows XP 2000 2003 Vista


Dieser Artikel beschreibt die Hintergründe, wann es Sinn macht, einen Datenträger mit FAT32 zu formatieren und wie dies unter Windows ab Version 2000 möglich ist. Gerade für externe Festplatten, allen voran USB-Festplatten, ist häufig die Nutzung von FAT32 erwünscht, jedoch ist eine entsprechende Formatierung unter Windows 2000, Windows XP, Windows 2003 Server und Windows Vista nicht mit den mitgelieferten Boardmitteln möglich.

Vor- und Nachteile von NTFS und FAT32 bei externen Laufwerken

NTFS bietet zahlreiche Vorteile gegenüber FAT32, allerdings gibt es auch einen gewaltigen Nachteil. Obwohl inzwischen nahezu alle Eigenheiten von NTFS durch Linux-Projekte, die entsprechende Treiber nachbilden, aufgedeckt wurden, sind einige Einzelheiten innerhalb von NTFS nicht eineindeutig. Dies ist auch der Grund dafür, dass bisher (Ende 2006) die Schreibzugriffe von Linux auf
NTFS-Partitionen als experimentell gelten. Die meisten Dinge sind möglich und funktionieren problemlos, allerdings können bisher keine symbolischen Links (die NTFS durchaus unterstützt) erzeugt werden - vorhandene hingegen werden vom Linux-NTFS-Treiber richtig interpretiert. Ein weiteres Problem ergibt sich logischer Weise bei Verwendung der NTFS-eigenen Verschlüsselung EFS (ab Win2000, nicht in XP Home), da der notwendige Schlüssel für andere Systeme nicht verfügbar ist.
Ein weiterer Schönheitsfehler steckt in der Tatsache, dass NTFS als modernes Betriebssystem Zugriffsrechte (ACL, Access Control List) auch auf Dateisystemebene vergibt. Auch wenn dies an sich sehr vorteilhaft ist, macht es auf Wechseldatenträgern wie externen USB-Laufwerken wenig Sinn und kann durchaus stören. Besitzt ein bestimmter Benutzer die alleinigen Rechte an (einzelnen) Dateien oder verzeichnissen eines USB-Laufwerks, so kann kein User auf einem anderen Windows-PC auf diese Dateien oder Verzeichnisse zugreifen, unter Umständen noch nicht einmal ein User mit Administrationsrechten. Um Zugriff zu erlangen, muss der Admin erst die Zugriffsrechte ändern. Da dies an sich kein Problem darstellt, ist der ACL-Schutz bei externen Laufwerken völlig wertlos, aber eben lästig und zeitaufwendig.
Will man ein mit NTFS formatiertes USB-Laufwerk an andere Hardware (z.B. Router mit USB-Anschluß oder MACs oder auch einen PC mit Win98) anschließen, für die entweder kein NTFS-Treiber vorhanden ist oder dieser evtl. gar nicht nachinstalliert werden kann, steht man genauso hilflos da. Somit ist für den Austausch von Daten zwischen Rechnern mit verschiedenen Betriebssystemen über ein USB-Laufwerk NTFS denkbar ungeeignet. Wer sich sicher ist, dass er das Laufwerk nur an NTFS-fähiger Hardware anschließt, kann jedoch relativ bedenkenlos dieses Format nutzen.
Es bleiben also nur wenige Alternativen: entweder man verwendet eines der Standarddateisysteme von Linux (ext2 oder ext3) und installiert auf allen Windowsrechnern dann immer erst die Treiber dafür nach oder man verwendet das alte FAT32, welches Laufwerke mit bis zu 2 TB (2048 GB) und Dateigrößen bis zu 4GB (ältere Linuxkernel teilweise "nur" 2GB) unterstützt. Größter Nachteil: mit steigender Partitionsgröße werden die Cluster ebenfalls größer, standardmäßig 32kB ab 32GB Laufwerksgröße im Gegensatz zu 4kB bei NTFS. Mit Hilfe geeigneter Tools kann man zwar bei der FAT32-Formatierung kleinere Clustergrößen einstellen, dies kann jedoch zu Fehlinterpretationen bei einigen Betriebssystemen führen, vor allem, wenn die FAT (File Allocation Table) durch zu viele kleine Dateien an die Grenzen ihrer Möglichkeiten stößt. Wer viele kleine Dateien auf eine FAT32-Partition legt, verliert somit standardmäßig sehr viel Speicherplatz, eben 32kB pro Datei. Wer hingegen fast nur große Dateien dort ablegt (Filme, große mp3-Mixe, ISOs, diverse Archive), für den ergibt sich eigentlich kein Nachteil aus der Nutzung von FAT32 gegenüber moderneren Dateisystemen. Eine weitere Möglichkeit ist die Unterteilung in mind. 2 Partitionen, von denen z.B. eine mit FAT32 und eine mit NTFS formatiert wird.
Eine sehr umfangreiche Dokumentation zu NTFS, den Internas, dem Entwicklungsstand von alternativen Treibern und der Herangehensweise bei der Datenrettung beschädigter NTFS-Laufwerke findet sich im Linux Magazin 11/2006 ab Seite 84 unter dem Titel Eine fremde Welt - Zugriff auf das Windows-Dateisystem NTFS unter Linux. Ergänzend möchte ich noch erwähnen, dass auch der Schutz von Daten vor fremden Einblicken durch EFS unter NTFS nicht wirklich gegeben ist. Zum einen wurde schon bei der Einführung darüber spekuliert, dass Geheimdienste eine Art "Masterkey" besitzen, aber selbst wenn dies nicht der Fall ist, so kann man inzwischen mit Hilfe geeigneter Tools und ein wenig Rechenleistung in Form moderner PCs die Verschlüsselung knacken. ein Bild einbinden ....

FAT32-Partition mit mehr als 32GB erstellen

Microsoft hat seit Windows 2000 einen künstlich begrenzten Formatbefehl implementiert, der dafür sorgt, dass keine FAT32-Partition mit mehr als 32GB Speicher formatiert werden kann. Hintergrund ist Microsofts Wunsch, die Verbreitung des NTFS-Dateisystem zu fördern und FAT32 zurückzudrängen. Windows unterstützt aber problemlos FAT32-Partitionen, die weitaus größer sind. Mit aktuellem ServicePack und entsprechenden Patches sollten auch Partitionen bis hin zu 2048MB genutzt werden können. Einige Tools älterer Windowsversionen haben jedoch Probleme bei der Verarbeitung großer Festplatten, wie sie heute üblich sind. So kann z.B. das fdisk von Windows98 selbst nach Installation des Patch gegen den 64GB-Fehler externalLink nur Festplatten bis 127GB und ohne LBA bearbeiten, der format-Befehl sollte jedoch auch mit größeren Partitionen problemlos klar kommen.
Datenträgerverwaltung Windows XP Daher empfehlen sich nur folgende Wege, um auf aktuellen Festplatten FAT32-Partitionen zu erzeugen:
  • Nutzung eines Partitionierungstools wie z.B. Partition Magic oder Acronis Partition Expert
  • Formatierung mit Linux, z.B. über eine Live-Distribution wie Knoppix
  • mit Hilfe eines kleinen Tools direkt unter Windows 2000/XP/2003/Vista
  • über Windows 98(SE) bzw. Millenium (kein Quickformat mgl.) oder einem aktuellen DOS-Derivat
Falls es sich um eine fabrikneue Festplatte handelt, muss diese zuerst initialisiert werden, damit sie vom System erkannt wird. Da dieser Vorgang nur einmal notwendig ist, konnte ich dies zur Erstellung dieser Anleitung auch nur 1x testen. Unter Windows 98 konnte ich spontan keine Möglichkeit entdecken, mit Boardmitteln auf die noch nicht initialisierte Festplatte im USB-Wechselrahmen zuzugreifen. Auf jeden Fall würde ein direkter Anschluß am IDE-Controller des Rechners weiterhelfen. Unter Windows XP geht man in die Computerverwaltung (z.B. mit rechter Maustaste auf Arbeitsplatz -> verwalten klicken) und wählt dort die Datenträgerverwaltung aus. Ist das Laufwerk bereits angeschlossen, so öffnet sich an dieser Stelle automatisch ein Menü, welches die Initialisierung des neuen Datenträgers anbietet. Die Vorschläge muss man nur entsprechend bestätigen. Wer eine bereits formatierte Festplatte (Standard bei Kauf eines externen Laufwerks) nutzt, benötigt diese Initialsierung nicht mehr. (Screenshot zur Datenträgerverwaltung in der Computerverwaltung)
Die Herangehensweise mit Tools wie Partion Magic etc. erkläre ich an dieser Stelle nicht weiter, weil diese zum einen für diese Zwecke überdimensioniert und nicht unbedingt notwendig sind und zum anderen sind diese Tools meist recht gut dokumentiert bzw. selbsterklärend.

Partitionierung und Formatierung direkt unter Windows ab 2000

Man geht in die Datenträgerverwaltung, macht einen Rechtsklick auf den gewünschten Datenträger und kann anschließend durch Klick auf Neue Partition mit Hilfe eines Assistenten den
Wünschen entsprechend partitionieren. Wenn der Assistent beim Menüpunkt "Partition formatieren" angekommen ist, sollte man wegen der nicht angebotenen FAT32-Formatierung den Radio-Button Diese Partition nicht formatieren auswählen (Laufwerksbuchstaben sinnvoll setzen wäre empfehlenswert) und nach 2 weiteren Klicks ist der Assistent fertig. Falls in dem entsprechenden Dialog oder an anderer Stelle innerhalb von Windows (nur bei älteren Versionen, ServicePacks etc.) die FAT32-Formatierung angeboten wird, so kann man diese trotzdem nicht nutzen, weil sie bei Partitionen mit mehr als 32GB erst zum Ende(!) des Formatiervorgangs mit der Meldung Das Volume ist für FAT32 zu groß abbricht. Das ist gerade beim Verzicht auf die schnelle Formatierung äußerst unangenehm, weil man so mal eben schnell sinnlos die Platte bearbeitet und das kann bei großen Partitionen durchaus 1h und länger dauern.
An dieser Stelle angekommen, muss man sich nunmehr für einen der oben angegeben Wege entscheiden. Eine sehr einfache Möglickeit ist die Nutzung des Tools h2format, welches man unter http://www.heise.de/ct/ftp/ctsi.shtml externalLink beziehen kann. Dieses funktioniert allerdings nur bei noch nicht formatierten Partitionen! Weitere Infos findet man in der mitgelieferten liesmich.txt. Die Formatierung mit diesem Tool ist denkbar einfach. Man geht dazu auf die Windows-Konsole (Start -> Ausführen -> cmd), wechelt in das Verzeichnis, in welchem man das Tool entpackt hat und gibt
h2format x:
mit x=zu formatierendes Laufwerk ein. Falls die Festplatte schon formatiert ist, verweigert das Tool die Formatierung. Datenträger-Formatierung Windows 98

FAT32-Formatierung unter älteren Windows-Versionen oder aktuellen DOS-Varianten

Als erstes sollte man wie oben beschrieben die Partitionen mit Windows XP etc. anlegen, da fdisk dies in den alten Windows-Varianten für aktuelle Laufwerksgrößen nicht hinbekommt. Danach schließt man die Festplatte an einen Windows-9x-Rechner (ab Win95B) an oder bootet den WinXP-PC mit einer Installations-/Notfalldiskette von Win9x oder der OpenSource FreeDOS externalLink. Dort kann man auf der Konsole mit einem einfachen
format x:
das Laufwerk "x" formatieren. Weitere Parameter kann man teilweise der entsprechenden Hilfe mit format /? entnehmen. Direkt unter Windows 98 ist die Formatierung auch möglich, indem man mit der rechten Maustaste im Explorer auf das Laufwerk klickt und dort formatieren auswählt (nicht für große Festplatten getestet). Allerdings bietet Windows 98 kein Quickformat für noch nicht formatierte Laufwerke an - weder auf der Konsole, noch grafisch. Deshalb ist diese Vorgehensweise nicht unbedingt empfehlenswert. Die Formatierung auf der Konsole zeigt für große Laufwerke falsche Größenangaben an, funktioniert aber.

FAT32-Formatierung mit Linux

Bei vielen aktuellen Distributionen werden USB-Laufwerke automatisch erkannt und eingebunden. Falls nicht, muss man erstmal mounten. Ist das Laufwerk ins System eingebunden, überprüft man mittels fdisk, wie das zu partitionierende Laufwerk heißt und kann dieses anschließend mit mkfs.vfat formatieren. Will man es erst noch partitionieren, kann man dies mit bequem mit cfdisk oder umständlich mit fdisk bzw. sfdisk tun. Um bei cfdisk auch auf das richtige Laufwerk zu kommen, übergibt man dieses als Parameter. Im folgenden noch mal die notwendigen Befehle:
# fdisk -l
# cfdisk /dev/<laufwerk>
# mkfs.vfat -F 32 /dev/<laufwerk>
oder alternativ:
# mkdosfs -F 32 /dev/<laufwerk>
Bei fest eingebauten IDE-Laufwerken beginnt das gewünschte Device mit hd, gefolgt von einem Buchstaben (a für Primary Master, b für Primary Slave usw.) und einer Zahl, welche die Partition definiert. Externe Laufwerke, die über USB angeschlossen werden, werden hingegen als SCSI-Laufwerke ins Linux-System eingebunden. Hier beginnt das betreffende Device demzufolge mit sd gefolgt von einem Buchstaben (mit steigender SCSI-ID aufsteigend und bei a beginnend) und einer Zahl (Partitionsnummer). Hat man mehrere SCSII-Laufwerke oder USB-Datenträger am Rechner dran und man weiß nicht, welches Laufwerk das richtige ist, so hilft einem die Meldung, die beim Anstöpseln auf der Konsole vom SCSI-Subsystem ausgegeben wird weiter. Dort steht in der letzten Zeile der Laufwerksname direkt hinter Attached scsi disk. Allerdings werden dort nicht die Nummern der Partitionen ausgegeben - die muss man trotzdem per fdisk -l holen. Falls mkfs.vfat nicht vorhanden sein sollte, muss man noch das Paket dosfstools nachinstallieren. Unter Debian reicht hierfür ein simples apt-get install dosfstools. Danach kann man auch obiges mkfs.vfat ausführen.