Die Firma Paragon Software hat eine GPL-Implementierung von NTFS für den Linux-Kernel veröffentlicht

Konstantin Komarov, Gründer und Leiter des Unternehmens Paragon Software, veröffentlichte in der Mailingliste des Linux-Kerns Patch-Satz mit einer vollständigen Implementierung des Dateisystems NTFS, das den Betrieb im Lese- und Schreibmodus unterstützt. Der Code ist unter der GPL-Lizenz geöffnet.

Die Implementierung unterstützt alle Funktionen der aktuellen Version von NTFS 3.1, einschließlich erweiterter Dateiattribute, Datenkomprimierung, effiziente Bearbeitung von Lücken in Dateien und das Reproduzieren von Änderungen aus dem Journal zur Wiederherstellung der Integrität nach Abstürzen. Im vorgeschlagenen Treiber wird vorerst eine eigene reduzierte Implementierung des NTFS-Journals verwendet, aber in Zukunft ist geplant, die Unterstützung für vollständiges Journaling über das vorhandene universelle Blockgerät im Kernel hinzuzufügen JBD (Journaling Block Device), auf dessen Basis das Journaling in ext3, ext4 und OCFS2 organisiert ist.

Der Treiber basiert auf dem Code eines bestehenden kommerziellen Produkts von Paragon Software und wurde umfassend getestet. Die Patches sind gemäß den Anforderungen zur Codevorbereitung für Linux strukturiert und enthalten keine Bindungen an zusätzliche APIs, wodurch der neue Treiber in den Hauptkernel integriert werden kann. Nach der Einbindung der Patches in den Hauptkernel von Linux plant die Firma Paragon Software, die Wartung, Fehlerrichtigungen und die Erweiterung der Funktionalität sicherzustellen.

Dennoch kann die Aufnahme in den Kernel Zeit in Anspruch nehmen, da eine Überprüfung des vorgeschlagenen Codes durch Dritte erforderlich ist. In den Kommentaren zur Veröffentlichung werden außerdem Probleme mit dem Build sowie Nichteinhaltungen mehrerer Anforderungen an die Patch-Dokumentation angemerkt. Beispielsweise wird empfohlen, den eingesandten Patch in Teile zu unterteilen, da 27.000 Zeilen in einem Patch zu viel sind und die Überprüfung und das Testen erschweren. In der Datei MAINTAINERS wird empfohlen, die Politiken zur zukünftigen Wartung des Codes klar zu definieren und den Git-Zweig anzugeben, in den Korrekturen eingereicht werden sollten. Es wird auch darauf hingewiesen, dass die Hinzufügung einer neuen NTFS-Implementierung in Erwägung gezogen werden muss, wenn ein alter Treiber fs/ntfs vorhanden ist, der nur im Nur-Lese-Modus arbeitet.

Früher musste man für den vollständigen Zugriff auf NTFS-Partitionen von Linux aus den FUSE-Treiber NTFS-3g verwenden, der im Benutzermodus arbeitet und nicht die gewünschte Leistung bietet. Dieser Treiber wurde nicht aktualisiert seit 2017, wie der nur im Lese-Modus arbeitende Treiber fs/ntfs. Beide Treiber wurden von der Firma Tuxera entwickelt, die, wie auch Paragon Software, liefert einen proprietären NTFS-Treiber, der kommerziell verbreitet wird.

Lassen Sie uns erinnern, dass im Oktober letzten Jahres, nach einer Veröffentlichung Microsoft veröffentlichte Spezifikationen und die Möglichkeit der kostenlosen Nutzung von Patenten für exFAT in Linux, die Firma Paragon Software den Quellcode ihres Treibers mit der Implementierung des Dateisystems exFAT öffnete. Die erste Version des Treibers war auf den Betrieb im Nur-Lesen-Modus beschränkt, aber es war eine Version mit Schreibunterstützung in Entwicklung. Diese Patches blieben ungenutzt und im Hauptkern wurde der exFAT-Treiber vorgeschlagen von Samsung und wird in den Firmware-Versionen von Android-Smartphones dieses Unternehmens eingesetzt. Dieser Schritt wurde schmerzhaft wahrgenommen von der Firma Paragon Software, die sich äußerte und die offenen Implementierungen von exFAT und NTFS kritisierte.

Quelle: opennet.ru

60GB SSD 8Gb DDR4