Menü

Kernel-Log: Dateisystem Ext4 verlässt Entwicklungsphase - ein Zwischenstopp auf dem Weg zu btrfs

vorlesen Drucken Kommentare lesen 216 Beiträge

Kernel-Log-Logo

Linus Torvalds hat eine größere, von (Ext-)Dateisystem-Entwickler Theodore Ts'o (tytso) vorbereitete Patch-Sammlung in den Hauptentwicklungszweig von Linux integriert. Sie enthält einen Patch, durch den das Ext4-Dateisystem sich fortan statt als ext4dev als ext4 ausgibt. Damit wird der ext3-Nachfolger mit der Veröffentlichung der nächsten Kernel-Version 2.6.28 endlich seine "heiße" Entwicklungsphase verlassen, nachdem die Kernel-Entwickler eine frühe Ext4-Variante mit Linux 2.6.19 in den Hauptentwicklungszweig aufgenommen hatten, um es dort gemeinsam weiterzuentwickeln und reifen zu lassen.

Abgeschlossen ist die Ext4-Entwicklung damit aber keineswegs; vielmehr dürften die Entwickler das Dateisystem genau wie zuvor bei Ext3 über die Zeit stetig weiterentwickeln und dabei nicht nur Fehlerkorrekturen vornehmen, sondern auch die eine oder andere Funktion nachrüsten. Die auf den Datenträgern verwendeten Dateisystemstrukturen sollen sich durch diese und andere Änderungen aber nicht mehr verändern – das während der Ext4-Entwicklung im Rahmen des offiziellen Linux-Kernels nötige Auslagern aller Dateien und Neuformatieren des Datenträgers sollte damit aber nun ein Ende haben. Auch braucht man in Zukunft nicht mehr darauf achten, dass Kernel-Version, Ext4-Utilities (e2fsprogs) und Datenträgerformat zusammenpassen.

Es ist Ansichtssache, ob Ext4 damit nun auch für den produktiven Einsatz reif ist – speziell Administratoren im Unternehmensbereich und die Entwickler der Enterprise-Distributionen von Novell und Red Hat dürften sicher noch etwas abwarten und dabei beobachten, wie sich das Dateisystem im Alltagsbetrieb der Anwender von Fedora und OpenSuse schlägt. Ein Red-Hat-Entwickler hat die für 2.6.28 integrierten Patches aber bereits in den Kernel von Fedora-Rawhide eingepflegt, der Bestandteil des für Ende November geplanten Fedora 10 werden wird. Der Installer soll Ext4-Dateisysteme aber nur anlegen können, wenn man ihm einen bestimmten Parameter bei Start übergibt. Ohnehin braucht man eine separate Boot-Partition mit einem der etablierten Dateisysteme, weil Boot-Loader wie Grub den Kernel bislang nicht von einem Ext4-formatierten Datenträger laden.

Vermutlich mindestens ebenso bedeutsam wie das Ende der Entwicklungsphase von Ext4 dürften indes die Informationen sein, die Theodore Ts'o vor einigen Tagen in einer länglichen Mail an die Linux-Kernel Mailing List (LKML) gesendet hat. In dem Beitrag zu den im Kernel-Log kürzlich bereits erwähnten Diskussionen (1, 2) rund um eine baldige Aufnahme des Dateisystems btrfs (zumeist "Butter FS" ausgesprochen) erwähnt Theodore Ts'o, dass er und einige andere bekannte Dateisystem-Entwickler sich vor knapp einem Jahr zu einem "Next Generation Filesystem"-Workshop (NGFS) getroffen haben. Dort sei man am Ende übereinstimmend der Ansicht gewesen, dass Linux ein "Next Generation Filesystem" brauche, um konkurrenzfähig zu sein; für ein solches wäre btrfs (mit einigen diskutierten Verbesserungen und Änderungen) langfristig die beste Lösung; die Arbeit am dem damals wie heute schon deutlich weiter gediegenen ext4 wollten die Entwickler aber trotzdem fortsetzen und abschließen, da es erfahrungsgemäß einige Zeit dauere, bis Unternehmenskunden einem komplett neuen Dateisystem ihre Daten anvertrauen ("At the end of the that workshop, there was unaminous agreement (including from yours truly) that (a) Linux needed a next generation filesystem to be competitive, (b) Chris Mason's btrfs (with some changes/enhancements discussed during the workshop) was the best long-term solution for NGFS, and (c) because creating a new enterprise filesystem always takes longer than people expect, and even then, it takes a while for enterprise users to trust a new filesystem for their most critical data, ext4 in the next generation of filesystems was needed as the bridge to the NGFS.").

Durch diese nicht sonderlich breit bekannt gemachten Empfehlungen hofften die Workshop-Teilnehmer, verschiedene Unternehmen und deren Entwickler zur Mitarbeit an btrfs bewegen zu können; zudem hofften die Teilnehmer auf Unterstützung der Pläne durch die Distributionen. Das hat wohl auch teilweise schon geklappt, denn Theodore Ts'o betont, dass btrfs keineswegs ein privates Projekt eines einzelnen Linux-Kernel-Entwicklers sei; vielmehr hätte viele erfahrene Dateisystem-Entwickler das Design diskutiert und ihre Erfahrungen eingebracht ("But I think it is fair to say that btrfs isn't just a private a project of a single Linux kernel developer, but rather the design has been discussed and reviewed by a large number of experienced filesystem architects. ").

Der Ext4-Entwickler lobt ferner den früher bei Suse für die Betreuung von Reiserfs zuständigen und jetzt bei Oracle arbeitenden btrfs-Entwickler Chris Mason: Er sei ein geschätzter und vertrauenswürdiger Kernel-Entwickler, der guten Code schreibe und diesen auch warten könne. Theodore Ts'o spricht sich daher genau wie vor Kurzem auch Andrew Morton für eine baldige Aufnahme von btrfs in den Hauptentwicklungszweig von Linux aus. Dort soll es dann in den kommenden Monaten und Jahren weiterentwickelt werden und reifen – ähnlich wie es die Kernel-Entwickler in den vergangenen Monaten und Jahren bei Ext4 umgesetzt haben.


Kernel-Log-Staccato

  • Nicht nur die Entwickler von ext4 und btrfs sind fleißig, auch die Programmierer des mit Hilfe von FUSE (Filesystem in Userspace) realisierten ntfs-3g haben einen Erfolg zu vermelden: Die Version 1.5012 ist nun erstmals in der Lage, eine beliebige Anzahl von Dateien und Verzeichnissen im Rahmen der von NTFS vorgegebenen Maximalgrenzen zu erstellen oder zu löschen. Mit einem Vorläufer der neuen Version hatten die Entwickler erfolgreich 54 Million Dateien auf einem mit NTFS formatierten Datenträger erstellt.
  • Peter Hutterer gibt in seinem Blog einen Überblick über die für die X Input Extension 1.5 vorgesehenen "Device Properties", durch die man in Zukunft etwa die Parameter von Eingabegeräten (etwa Synaptics-Touchpads) zur Laufzeit einstellen können soll.
  • Die Entwickler der Grafiktreiber radeonhd haben die Versionen 1.2.2 und 1.2.3 freigegeben. Sie bringen unter anderem Xvideo-Unterstützung und in Verbindung mit aktuellen Versionen von X-Server Mesa-3D-Unterstützung für Grafikhardware mit den Radeon-GPUs R5xx (Radeon X1000-Serie) und RS6xx (etwa Mainboard-Chipsatz 690G).

Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich auch in den vorangegangen Ausgaben des Kernel-Logs auf heise open:

Ältere Kernel-Logs finden sich über das Archiv oder die Suchfunktion von heise open.