Kent Overstreet hat die Veröffentlichung des Dateisystems Bcachefs 1.37.0 bekanntgegeben. Diese Version umfasst zwei Pakete: bcachefs-kernel-dkms, ein Kernel-Modul, das mit Hilfe des DKMS (Dynamic Kernel Module Support) erstellt wird, und bcachefs-tools, ein im Benutzerspace laufendes Tool, das Befehle zum Erstellen (mkfs), Einbinden, Wiederherstellen und Überprüfen des Dateisystems implementiert. Die Pakete sind für Debian, Ubuntu, Fedora, openSUSE, NixOS und Arch Linux gebaut. Das DKMS-Modul unterstützt Linux-Kernel ab Version 6.16.
In der neuen Version:
- Die Unterstützung für Fehlerkorrekturcodes, die eine Wiederherstellung beschädigter Daten ähnlich wie bei RAID 5/6 ermöglichen, wurde stabilisiert und als bereit für den allgemeinen Gebrauch erklärt. Die Implementierung basiert auf Reed-Solomon-Codierung und ist in der Lage, bis zu N Fehler in einem Stripe zu korrigieren, vorausgesetzt, es sind N redundante Blöcke vorhanden. Automatische Wiederherstellung degradierter Stripes ist gewährleistet. Zudem wurde die Möglichkeit hinzugefügt, Wiederherstellungscodes in Konfigurationen mit unterschiedlich großen Speichermedien anzuwenden.
- Unterstützung für den sich in Entwicklung befindenden Linux-Kernel 7.0 hinzugefügt.
- Es wurden neue Befehle "subvolume list" zur Ausgabe von Untervolumen mit Filter- und Sortiermöglichkeiten, "subvolume list-snapshots" zur Anzeige von Snapshots in Baumstruktur und "subvolume reflink-option-propagate" zur Anwendung von Datei-E/A-Parametern wie Kompression, Prüfziffer, Anzahl der Replikate und Liste der Zielgeräte auf die Extents der Datei implementiert.
- Der Rücklauf (rewind) des Journals wurde stabilisiert.
- Die automatische Wiederherstellung wurde sichergestellt, wenn Geräte mit fehlerhafter Unterstützung für Befehle zum Zurücksetzen von gepufferten Schreibvorgängen (flush und FUA) verwendet werden.
- Die Wiederherstellung nach einem unerwarteten Systemabbruch wurde beschleunigt.
- Die Leistung des Dateisystems, das mehrere Geräte umfasst, wurde verbessert.
- Die im Benutzermodus ausgeführten bcachefs-Dienstprogramme wurden in Rust neu geschrieben. Zukünftig ist geplant, auch die auf Kernel-Ebene arbeitenden Komponenten des Dateisystems in Rust umzuschreiben. Zudem wurde die Arbeit mit dem Verus-Tool zur formalen Verifikation von Rust-Code aufgenommen.
Das Projekt Bcachefs entwickelt ein Dateisystem, das darauf abzielt, die erweiterte Funktionalität von Btrfs und ZFS mit der Leistung, Zuverlässigkeit und Skalierbarkeit von XFS zu kombinieren. Bcachefs unterstützt Funktionen wie die Einbindung mehrerer Geräte in ein Volume, mehrschichtige Speicheranordnungen (eine untere Schicht mit häufig verwendeten Daten auf schnellen SSDs und eine obere Schicht mit weniger häufig genutzten Daten von Festplatten), Replikation (RAID 1/10), Caching, transparente Datenkompression (LZ4-, gzip- und ZSTD-Modi), Zustandsschnappschüsse, Integritätsprüfung über Prüfziffern, Fehlerkorrekturcodes und die Speicherung von Informationen in verschlüsselter Form (unter Verwendung von ChaCha20 und Poly1305).
Quelle: opennet.ru
