Kent Overstreet, der Entwickler des Bcachefs-Dateisystems, hat Patches vorgeschlagen, die es dem Linux-Kernel ermöglichen, mit dem Bcachefs-Dateisystem zu arbeiten, selbst nachdem ein erheblicher Teil der Metadaten beschĂ€digt wurde, indem er bei Bedarf die beschĂ€digten b-BĂ€ume aus den Metadaten der Inode- und Dirent-Strukturen neu aufbaut. Die Ănderungen wurden von Linus Torvalds akzeptiert und in das heutige Test-Update des Kernels 6.9-rc3 aufgenommen.
Die Ănderungen ermöglichen das Mounten beschĂ€digter Dateisysteme und bieten Zugriff auf alle oder fast alle Daten im Dateisystem, die von einem kĂŒrzlich aufgetretenen Fehler betroffen sind, der zur Zerstörung des Dateisystems fĂŒhrte. Der Fehler trat auf, wenn nach einem Update des Werkzeugs ein Versuch unternommen wurde, die Dateisystemstrukturen zu aktualisieren, der jedoch nicht abgeschlossen wurde, woraufhin der Kernel mit der alten Implementierung von Bcachefs versuchte, die Version der Strukturen zurĂŒckzustufen und das unvollendete Update ignorierte. Eine solche Situation fĂŒhrte zu einem âSplit Brain Modeâ, in dem keine der Operationen abgeschlossen werden kann und die b-Baum-Strukturen des Dateisystems nicht mehr konsistent mit dem tatsĂ€chlichen Inhalt sind.
Der erwÀhnte Patch ermöglicht es, selbst in solchen FÀllen weiterzuarbeiten. Zu den EinschrÀnkungen der Technologie gehört, dass bei vorhandenen Snapshots der b-Baum der Snapshots vorhanden und intakt sein muss.
Quelle: opennet.ru
