Kernel NTFS-Treiber vs NTFS-3G

17

Eine umfassendere formulierte Frage, da ich den Zugriff auf die andere verloren habe.

Ich würde darum bitten, dass der andere gelöscht wird, nicht dieser, da er gar nicht erst hätte migriert werden sollen.

Derzeit sind zwei NTFS-Treiber für Linux verfügbar.

Der im Kernel enthaltene NTFS-Treiber und der Userspace-NTFS-3G-Treiber, der FUSE verwendet.

In jedem Fall funktioniert NTFS-3G einwandfrei.

Meine Frage ist dann, ob das NTFS-Dateisystem erfolgreich rückentwickelt wurde. Warum hat das NTFS-Kernel-Team die Änderungen nicht in seinen Treiber implementiert? Im Moment ist es noch als experimentell markiert und es besteht eine gute Chance, dass es Ihre Daten zerstört.

Hinweis: Dies hat absolut nichts mit Distributionen zu tun ...

Jack
quelle

Antworten:

24

Leider ist dies ein häufiges Problem bei Community-Projekten.

Sobald die Community ein signifikantes Problem identifiziert, werden Projekte angezeigt, um es zu beheben. In diesem Fall liegt das Problem in der Verwendung von NTFS FS.

Linux-NTFS (Kernel-FS-Treiber) wurde zuerst erstellt und nach einer Weile kam die Entwicklung zum Stillstand. IMO eine schlechte Wahl, es hat Priorität verdient und tut es immer noch. Dieser Treiber ist stabil und schreibgeschützt, solange ich Linux verwendet habe (über ein halbes Jahrzehnt). Hiermit wird nur die Hälfte des Problems behoben, sodass die Community nach Möglichkeiten suchte.

Captive NTFS (Driver Wrapper für NTFS.SYS) war vergleichsweise einfacher zu erstellen. So viel Code gab es bereits in anderen Projekten. Der Hauptgrund, auf den die Community schaute, war, dass NTFS.SYS keine freie Software ist.

NTFS-3G (Sicherung) wurde zusammengeschraubt und ist voll funktionsfähig. Das Projekt hat die treibende kommerzielle Kraft von Tuxera. Dieses Projekt befasst sich mit dem ursprünglichen Problem der Verwendung von NTFS unter Linux. Tuxera bietet einen proprietären Premium-NTFS-Kerneltreiber an, der aufzeigt, warum die Community Linux-NTFS vervollständigen muss.

Nachdem das ursprüngliche Problem behoben war, kühlte der Aufschrei der Community ab. Was bedauerlich sein kann, da die korrekte Implementierung oftmals nicht abgeschlossen wird. Wenn ich darüber nachdenke, hat Tuxera tatsächlich die NTFS-Implementierung des proprietären Kernels geschützt. Das Erstellen eines minderwertigen FUSE-Treibers hat die Nachfrage nach einem soliden GPL-Kerneltreiber gekühlt.

Nun, nur um es zu verdeutlichen, ich bin ein großer Unterstützer / Enthusiast eines Gemeinschaftsprojekts. Ich bin zufällig auch ein Kritiker ohne Kernel-Programmierkenntnisse. FUSE hat viele Vorteile, insbesondere für spezielle FS-Treiber. Die kalten harten Fakten stehen noch, Kernel-FS-Treiber bieten eine viel stärkere Leistung. Das Schreiben von Kerneltreibern erfordert viel mehr Zeit und Talent als eine vergleichbare FUSE-Implementierung. Beide (Time from Talented Community Programmers) waren schon immer Mangelware.

Ich hoffe, dies erklärt die aktuelle Situation in Bezug auf die Unterstützung von Linux NTFS.

JM Becker
quelle
1

Es ist eine Frage der Priorität. Wenn Sie sich für eine Sache entscheiden, wird etwas anderes nicht erledigt. ntfd-3g funktioniert gut, daher hat das Berühren des Kerneltreibers eine sehr niedrige Priorität.

Ignacio Vazquez-Abrams
quelle
2
Abgesehen davon, dass sie von völlig getrennten Projekten geschrieben wurden und es für den Kernel sicher wichtig ist, einen Treiber zu haben, der tatsächlich funktioniert?
Jack
Die Tatsache, dass es sich um separate Projekte handelt, spielt keine Rolle. Dies macht es sogar noch schlimmer, da Sie jemanden suchen müssen, der sowohl Kenntnisse über das Kernel-Dateisystemmodul als auch über NTFS besitzt, um den Kerneltreiber schreiben zu können.
Ignacio Vazquez-Abrams
1
Nein, das ist nicht irrelevant. Im Moment hat der Kernel keine NTFS-Schreibunterstützung, wenn dies eindeutig möglich ist. Stattdessen wird eine Lösung von Drittanbietern benötigt. Ihre Antwort ist so ähnlich wie zu sagen, warum Sie sich die Mühe machen, Gnome zu entwickeln, wenn KDE die Arbeit gut macht. Es ist keine passende Analogie, da sowohl Gnome als auch KDE voll funktionsfähig sind, aber Sie verstehen, worum es geht ...
Jack,
Gnome und KDE haben auch unterschiedliche Zwecke. Was würde ein Kerneltreiber tun, was ein FUSE-Treiber nicht tun würde?
Ignacio Vazquez-Abrams
3
Sie verpassen den Punkt. Es gibt viele Vorteile, einen funktionierenden NTFS-Treiber im Kernel zu haben, ohne sich auf einen Userspace-Treiber eines Drittanbieters verlassen zu müssen. Auf jeden Fall lautet die Antwort auf meine Frage nicht "weil ntfs-3g sehr gut funktioniert". Wenn Sie Project X und Project Y haben, beide das gleiche Ziel haben und Project Y das erste bekommt, wird Projec X nicht aufgeben. Tatsächlich sehen wir allzu oft das Gegenteil davon.
Jack
1

Diese Frage habe ich mir heute gestellt. Hier ist mein wirklich trübes und nicht fachmännisches Verständnis davon.

ntfs3g ist eigentlich kein Treiber, sondern eine Anwendung. Es verwendet FUSE (Dateisystem im Userspace) als Schnittstelle und ist plattformübergreifend. Während der Kernel-NTFS-Treiber möglicherweise die von NTFS3G verwendeten Methoden implementieren könnte (oder? Ich bin mir nicht sicher), würde er im Userspace arbeiten, der nicht in den Zuständigkeitsbereich des Kernels fällt.

... das war buchstäblich nur eine Schlussfolgerung basierend auf einem Satz, den ich las. Wie hört sich das für jemanden an, der tatsächlich in diesem Thema unterrichtet ist? =)

Tatsächlich denke ich, dass ich auf diesem kleinen Stück bloggen werde. = D

musasabi
quelle
Ja, die ntfs-3g-Version ist im Vergleich zur nativen ntfs.sys unter Windows so langsam .
user2284570