Kompletter NTFS-Schreibzugriff unter Linux

Steffen Weber
23 Kommentare

Ein neuer, auf dem Linux-NTFS-Projekt aufbauender Treiber zur Verwendung von Microsofts NTFS-Dateisystem unter Linux steht seit dem Wochenende überraschend zum Download bereit. Im Gegensatz zu den verfügbaren Alternativen, ermöglicht NTFS-3G das Schreiben auf NTFS-Dateisysteme ohne dabei Datenverlust zu riskieren.

Microsoft hält Details zu dem seit Windows NT verwendeten und in neueren Versionen des hauseigenen Betriebssystems kontinuierlich weiterentwickelten Dateisystem unter Verschluss. Mit Linux konnte man bisher NTFS-Partitionen lediglich lesen, der Schreibzugriff war nur unter bestimmten Umständen möglich – beispielsweise kann man keine neuen Dateien anlegen, wohl aber bestehende Dateien überschreiben.

Der NTFS-3G-Treiber ist im Userspace implementiert, ist also nicht in den Linux-Kernel integriert, sondern kommuniziert mit diesem stattdessen über eine seit Linux 2.6.14 verfügbare Schnittstelle namens FUSE (Filesystem in Userspace). Version 2.6.14 des Linux-Kernels wurde im Oktober 2005 veröffentlicht.

Ursprünglich war FUSE dazu gedacht, Pseudo-Dateisysteme wie das SSH Filesystem zu ermöglichen. Das SSH Filesystem ermöglicht das Einbinden des Verzeichnisbaums eines entfernten Computers in das lokale Dateisystem, so dass man mit jedem beliebigem Programm auf diese Dateien zugreifen kann als befänden sich diese auf dem lokalen Computer. Die Kommunikation wird dabei wie von SSH bekannt verschlüsselt.

Die Geschwindigkeit des NTFS-3G-Treibers übertrifft laut Aussage des Autors sogar die der klassischen Linux-Dateisysteme ext3 und XFS. Unabhängige Benchmarks sind jedoch noch nicht verfügbar. Insbesondere wurde die Frage aufgeworfen, warum der durch FUSE entstehende Kommunikations-Overhead zwischen dem NTFS-3G-Treiber und dem Linux-Kernel die Performance im Vergleich zu den klassischen Dateisystemen nicht ausbremse.

Zur täglichen Verwendung ist der Treiber indes noch nicht ganz geeignet. Zum einen sind noch keinerlei Zugriffsrechte implementiert und zum anderen kann es bei kompletter Belegung der Partition noch zu Datenverlust kommen. Die Entwickler sind jedoch sehr zuversichtlich, diese Kinderkrankheiten bald auszumerzen.

Die Chancen auf eine Integration in den Linux-Kernel stehen übrigens schlecht. Zum einen werden in dem Code Programmkonstrukte verwendet, die für den Kernel nicht geeignet seien. Darüber hinaus sei dieses Ziel ohnehin nicht erstrebenswert, da die NTFS-3G als FUSE-Modul nicht unter Performance-Problemen zu leiden scheint. Als Bestandteil des Kernels könnten sich Bugs zudem auf die Stabilität des gesamten Systems auswirken.

Weitere Details und der Download-Link für die Experimentierfreudigen finden sich in der Ankündigung von Szakacsits Szabolcs.