VMware ESXi and vSphere Cluster Management
NTFS-Dateisystem unter Windows und Linux
NTFS verständlich erklärt: Eigenschaften, Rechte, Journaling, Dual-Boot, Linux-Treiber sowie Mounten und Einbinden über /etc/fstab.
NTFS ist das wichtigste Dateisystem moderner Windows-Installationen. Wer Windows und Linux gemeinsam nutzt, begegnet NTFS häufig auf der Systempartition oder auf einer gemeinsamen Datenpartition. Dieser Artikel erklärt die Grundlagen und zeigt, wie NTFS unter Linux sicher gelesen und beschrieben werden kann.
Was ist NTFS?
NTFS steht für New Technology File System. Es wurde von Microsoft entwickelt und ist das übliche Standarddateisystem aktueller Windows-Installationen. NTFS verwaltet Dateien, Verzeichnisse, Dateinamen, Metadaten, Speicherplatz und Zugriffsrechte auf einem sogenannten Volume.
Ein Dateisystem besteht aus Regeln und Datenstrukturen, mit denen Dateien auf einem Speicherbereich gespeichert und wiedergefunden werden. Eine Partition ist dagegen ein logisch abgegrenzter Bereich eines physischen Datenträgers. Erst eine Formatierung versieht eine Partition mit einem Dateisystem. Ein Datenträger kann beispielsweise mehrere Partitionen enthalten, die jeweils unterschiedliche Dateisysteme verwenden.
- Physischer Datenträger: zum Beispiel eine SSD, HDD oder ein USB-Laufwerk.
- Partition: ein logisch abgegrenzter Bereich auf diesem Datenträger.
- Dateisystem: die Struktur, die Dateien und Verzeichnisse innerhalb dieses Bereichs organisiert.
- Volume: ein nutzbarer logischer Speicherbereich, häufig eine formatierte Partition.
Grundlegende Eigenschaften von NTFS
Journaling und Konsistenz
NTFS ist ein Journaling-Dateisystem. Beim Journaling werden wichtige Änderungen zunächst in einem Protokoll, dem Journal, vermerkt. Wird der Rechner beispielsweise durch einen Stromausfall oder einen Absturz unterbrochen, kann das Dateisystem anhand dieser Informationen leichter in einen konsistenten Zustand zurückgeführt werden.
Journaling schützt nicht automatisch vor Datenverlust. Bereits geschriebene Dateiinhalte können fehlen, wenn eine Unterbrechung während des Schreibens auftritt. Das Journal unterstützt vor allem die Konsistenz der Dateisystemstrukturen.
Dateien, Verzeichnisse und Metadaten
NTFS speichert nicht nur den Inhalt einer Datei. Auch Dateiname, Größe, Zeitstempel, Besitzer, Zugriffsrechte, Attribute und Informationen zur Speicherplatzbelegung gehören zu den Metadaten. Dateien und Verzeichnisse werden in einer strukturierten internen Verwaltung erfasst. Dadurch kann NTFS große Volumes und umfangreiche Verzeichnisbäume verwalten.
Größen- und Namensgrenzen
NTFS unterstützt sehr große Dateien und Volumes. Die häufig genannte historische Angabe von bis zu 16 EB (Exabyte) für einzelne Dateien und Dateisysteme ist im behandelten Kontext ein Richtwert. Tatsächliche Grenzen hängen unter anderem von NTFS-Version, Clustergröße, Betriebssystem, Partitionierungsschema, Treiber und Implementierung ab. Praktisch begrenzen Hardware, Windows-Version, Speicherplatz und verwendete Werkzeuge die nutzbare Größe meist deutlich früher.
Ein einzelner Dateiname kann grundsätzlich bis zu 255 Zeichen beziehungsweise Bytes umfassen. Die genaue Bedeutung hängt von der Zeichencodierung und der verwendeten Schnittstelle ab. Zusätzlich gelten Regeln für reservierte Zeichen und Namen, insbesondere wenn die Datei zwischen Windows und Linux verwendet wird. Pfadlängen können unabhängig von der Länge eines einzelnen Dateinamens weitere Beschränkungen haben.
Sicherheit und Rechteverwaltung
ACLs unter NTFS
Eine ACL (Access Control List) ist eine Liste von Zugriffsregeln. Für eine Datei oder ein Verzeichnis kann sie festlegen, welcher Benutzer oder welche Gruppe bestimmte Aktionen ausführen darf. Typische Rechte sind Lesen, Schreiben, Ändern und vollständige Kontrolle.
Ein Ordner kann beispielsweise einem Besitzer gehören, einer Abteilung als Gruppe Leserechte geben und einem einzelnen Benutzer zusätzlich Schreibrechte gewähren. Regeln können außerdem vererbt werden: Neue Dateien übernehmen dann Berechtigungen ihres übergeordneten Ordners.
Das klassische Linux-Rechtemodell unterscheidet zunächst Besitzer, Gruppe und andere Benutzer. Dazu kommen die Modusbits für Lesen, Schreiben und Ausführen. Windows-ACLs sind detaillierter und können mehrere einzelne Zugriffssteuerungen, Vererbung und explizite Verbote enthalten. Beim Einbinden eines NTFS-Volumes unter Linux werden diese Modelle je nach Treiber und Mount-Option nicht vollständig gleich dargestellt.
NTFS-Berechtigungen sind besonders wichtig, wenn mehrere Personen denselben Rechner oder Server verwenden. Sie begrenzen den Zugriff auf vertrauliche Dokumente und verhindern unbeabsichtigte Änderungen. Die Rechteverwaltung sollte mit einem passenden Backup- und Verschlüsselungskonzept kombiniert werden.
Zusatzfunktionen von NTFS
Komprimierung und Verschlüsselung
NTFS kann Dateien und Verzeichnisse transparent komprimieren. Anwendungen greifen weiterhin auf die Dateien zu, während NTFS die Speicherung intern platzsparender organisiert. Die Einsparung hängt stark vom Dateityp ab: Textdateien komprimieren sich meist besser als bereits komprimierte Bilder oder Videos.
Verschlüsselungsfunktionen schützen gespeicherte Inhalte vor unbefugtem Zugriff. Dabei muss zwischen der Verschlüsselung einzelner Dateien und der Verschlüsselung eines gesamten Datenträgers unterschieden werden. Ohne den passenden Schlüssel oder die passende Windows-Konfiguration kann ein anderer Zugriffspfad, etwa über Linux, eingeschränkt sein.
Disk Quotas
Eine Disk Quota ist eine Speicherbegrenzung oder Speicherüberwachung für einen Benutzer. Auf einem gemeinsam genutzten Arbeitsplatzrechner oder Server kann beispielsweise verhindert werden, dass ein Benutzer den gesamten freien Speicher belegt. Quotas sind von der Windows-Version, der Systemkonfiguration und der Verwaltung des Volumes abhängig.
Nicht jede NTFS-Funktion ist in jeder Windows-Version verfügbar oder gleich konfiguriert. Unter Linux hängt die Unterstützung zusätzlich vom Kernel-Treiber, der Distribution und den verwendeten Werkzeugen ab.
NTFS im Dual-Boot-Betrieb
Bei einem Dual-Boot-System befinden sich Windows und Linux auf demselben Rechner. Häufig existiert neben den Betriebssystempartitionen eine gemeinsame NTFS-Datenpartition. Beide Systeme können diese Partition grundsätzlich lesen, sodass Dokumente, Bilder oder Installationsdateien gemeinsam genutzt werden können.
Bevor Linux eine Windows-Partition schreibend einbindet, muss Windows vollständig heruntergefahren sein. Der Windows-Schnellstart speichert den Systemzustand teilweise und kann das NTFS-Volume als noch geöffnet hinterlassen. Auch nach dem Ruhezustand darf die Partition unter Linux nicht schreibend verändert werden, weil Windows beim Fortsetzen einen veralteten Zustand vorfinden könnte.
- Schnellstart in Windows deaktivieren, wenn regelmäßig von Linux auf das Volume geschrieben werden soll.
- Windows vollständig herunterfahren, nicht nur abmelden oder in den Ruhezustand wechseln.
- Keine gleichzeitige Nutzung derselben Partition durch laufendes Windows und Linux erzwingen.
- Bei einem unsauberen oder inkonsistenten Zustand zunächst Windows zur Prüfung und Reparatur verwenden.
- Vor dem Neustart oder Entfernen eines externen Datenträgers das Volume unter Linux aushängen.
Parallele oder inkonsistente Nutzung kann zu beschädigten Dateisystemstrukturen, verlorenen Änderungen oder widersprüchlichen Metadaten führen.
Linux-Treiber für NTFS
NTFS-3G ist ein verbreiteter Linux-Treiber im Userspace. Er ermöglicht typischerweise lesenden und schreibenden Zugriff auf NTFS. Ein Userspace-Treiber läuft außerhalb des eigentlichen Kernel-Dateisystems und verwendet dafür eine passende Schnittstelle.
ntfs3 ist ein moderner NTFS-Treiber im Linux-Kernel. Er kann je nach Distribution und Kernel bereits verfügbar sein. Die Wahl zwischen ntfs3 und NTFS-3G hängt von Distribution, Kernel-Version, benötigten Funktionen und dem Zustand des Volumes ab.
Wichtige Mount-Optionen
Mount-Optionen steuern, wie Linux das NTFS-Volume darstellt. uid und gid ordnen Dateien unter Linux einem Benutzer beziehungsweise einer Gruppe zu. umask beeinflusst die angezeigten Zugriffsrechte. Die Optionen ändern nicht automatisch die eigentliche Windows-ACL-Semantik.
Bei international verwendeten Dateinamen kann außerdem eine Zeichenkodierung relevant sein. Für Schreibzugriff darf nur ein unterstützter Treiber verwendet werden, und das Volume muss sauber geschlossen sein.
NTFS-Partitionen erkennen und einbinden
1. Datenträger sicher identifizieren
Vor jedem Mount-Befehl muss die richtige Partition eindeutig ermittelt werden. Ein Beispielname wie /dev/sdb1 ist nur ein Platzhalter und darf nicht blind übernommen werden.
lsblk -f
sudo blkid
Achten Sie in der Ausgabe auf Dateisystemtyp, Größe, Label und UUID. Ein falsches Gerät einzubinden oder zu verändern kann zu Datenverlust führen.
2. Mountpoint anlegen
Ein Mountpoint ist ein Verzeichnis, unter dem Linux ein Dateisystem in den Verzeichnisbaum einhängt.
sudo mkdir -p /mnt/windows-data
3. NTFS manuell mounten
Wenn der Kernel-Treiber ntfs3 verfügbar ist und das Volume sauber beendet wurde:
sudo mount -t ntfs3 /dev/sdb1 /mnt/windows-data
Mit NTFS-3G lautet die alternative Form:
sudo mount -t ntfs-3g /dev/sdb1 /mnt/windows-data
Falls die Distribution den NTFS-3G-Helfer automatisch auswählt, kann die explizite Typangabe je nach System entfallen. Paketname und Installation unterscheiden sich zwischen Distributionen.
4. Benutzerzuordnung für eine Datenpartition
Für eine gemeinsam genutzte Datenpartition kann die Darstellung unter Linux angepasst werden:
sudo mount -t ntfs3 -o uid=1000,gid=1000,umask=022 /dev/sdb1 /mnt/windows-data
uid=1000 und gid=1000 sind Beispiele. Verwenden Sie die Werte des gewünschten lokalen Kontos. Diese Optionen bestimmen, wie Eigentümer und Modusrechte unter Linux angezeigt werden; sie ersetzen keine Windows-ACLs.
5. Volume aushängen
Vor dem Entfernen eines externen Datenträgers oder vor einem Neustart muss das Dateisystem sauber ausgehängt werden:
sudo umount /mnt/windows-data
Schließen Sie vorher alle Dateien und Terminals, die in diesem Mountpoint arbeiten. Ein belegtes Dateisystem kann nicht ohne Weiteres ausgehängt werden.
Dauerhaftes Mounten mit /etc/fstab
Für eine automatische Einbindung wird ein Eintrag in /etc/fstab verwendet. Eine UUID ist eine eindeutige Kennung des Dateisystems. Sie ist stabiler als ein Gerätename wie /dev/sdb1, der sich nach dem Anschließen weiterer Laufwerke ändern kann.
UUID=ABCD-1234 /mnt/windows-data ntfs3 defaults,uid=1000,gid=1000,umask=022,nofail 0 0
Ersetzen Sie ABCD-1234 durch die UUID aus blkid. Der Mountpoint muss existieren. nofail ist für optionale oder nicht immer angeschlossene Laufwerke nützlich, weil ein fehlendes Gerät den Systemstart nicht blockieren soll.
Testen Sie die Konfiguration vor dem Neustart:
sudo mount -a
Prüfen Sie danach, ob das Volume am erwarteten Mountpoint erreichbar ist. Ein falscher Mountpoint, eine falsche UUID oder eine nicht unterstützte Option kann den automatischen Mount-Vorgang verhindern.
Fehlerbehebung
Partition wird nur lesbar eingebunden
Häufige Ursachen sind ein Windows-Schnellstart, der Ruhezustand, ein nicht sauber ausgehängtes Volume oder ein Treiber ohne Schreibunterstützung. Fahren Sie Windows vollständig herunter und führen Sie bei Bedarf die Windows-Dateisystemprüfung aus. Erst danach sollte die Partition erneut unter Linux schreibend eingebunden werden.
Dateisystemtyp oder Treiber nicht verfügbar
Wenn beim Mounten ein Fehler zum Dateisystemtyp erscheint, prüfen Sie zunächst:
lsblk -f
sudo blkid
ntfs3 ist möglicherweise im laufenden Kernel nicht vorhanden oder NTFS-3G ist nicht installiert. Verwenden Sie den Treiber, den Ihre Distribution unterstützt, und achten Sie auf den korrekten Typ ntfs3 oder ntfs-3g.
Dateien gehören scheinbar root
Ohne passende uid-, gid- oder umask-Optionen kann ein normaler Benutzer Dateien unter Linux nicht wie erwartet bearbeiten. Passen Sie die Mount-Optionen an das lokale Konto an. Berücksichtigen Sie dabei, dass die angezeigten Linux-Rechte nicht automatisch die vollständige Windows-ACL darstellen.
fstab verhindert den Start oder verzögert ihn
Testen Sie den Eintrag mit sudo mount -a. Kontrollieren Sie UUID, Mountpoint und Optionen. Bei einem externen Laufwerk, das beim Start fehlen darf, kann nofail sinnvoll sein.
Dateiname oder Datei verhält sich unerwartet
Windows und Linux behandeln reservierte Namen, Zeichen und Groß-/Kleinschreibung teilweise unterschiedlich. Anwendungen und Treiber können zusätzliche Einschränkungen verursachen. Verwenden Sie für gemeinsam genutzte Dateien Windows-kompatible Namen und verlassen Sie sich nicht ausschließlich auf Linux-Regeln.
NTFS und FAT32 im Vergleich
FAT32 ist älter und besonders weit verbreitet. Viele Geräte können FAT32 lesen und schreiben. Dafür fehlen wichtige Funktionen wie Journaling und eine vergleichbare detaillierte Rechteverwaltung. Außerdem besitzt FAT32 andere Größenbeschränkungen, insbesondere eine bekannte Grenze von etwa 4 GiB pro einzelner Datei.
Geeignete Einsatzfälle
- Windows-Systempartitionen und Windows-interne Datenpartitionen.
- Gemeinsame Datenpartitionen in Dual-Boot-Systemen, sofern Windows sauber heruntergefahren wird.
- Große Dateien und Volumes, bei denen FAT32-Grenzen stören.
- Umgebungen, in denen Windows-ACLs, Komprimierung oder Quotas benötigt werden.
Für ein Wechselmedium, das mit Kameras, Fernsehern, Spielekonsolen oder älteren Geräten funktionieren muss, kann FAT32 trotz seiner Einschränkungen geeigneter sein. Für aktuelle plattformübergreifende Wechselmedien ist je nach Geräten auch exFAT eine mögliche Alternative.
Weiterführend: NTFS-Dateisystem unter Windows und Linux.