Wie entferne ich unter Linux btrfs ein nicht vorhandenes Dateisystem aus der Liste?

Wie entferne ich unter Linux btrfs ein nicht vorhandenes Dateisystem aus der Liste?

Ich probiere BTRFS aus. Ich habe einige Fehler gemacht, aus denen ich etwas lernen kann!

Ich habe mehrere btrfs-Dateisysteme auf verschiedenen Geräten (sdX, loop, lvm usw.) erstellt. Während dieser Tests habe ich (abrupt) einige oder alle Geräte entfernt, die Teil eines btrfs-Dateisystems waren (fs wurde zuerst ausgehängt).

Aber jetzt btrfs showzeigt der Befehl immer noch die UUID des Dateisystems und eine Liste der Geräte an. Mir ist klar, dass ich das btfrs device delVOR dem Entfernen der Geräte hätte tun sollen ...

Aber wo speichert btrfs seine Liste der behandelten Dateisysteme? Gibt es irgendwo eine Conf-Datei? Einen speziellen Befehl in den btrfs-Tools?

Beim Lesen des Wikis und der Tutorials bin ich zu keiner umfassenden Antwort gekommen ... Es wird gesagt, dass wir ein totes Dateisystem wiederherstellen und es mounten können, mount -o recovery /dev/yourBTFSvolume /mount/pointaber das setzt voraus, dass Metadaten/Daten und zugehörige Geräte noch vorhanden sind, was hier nicht der Fall ist.

Hier versuche ich nicht, Daten wiederherzustellen, ich möchte lediglich die BTRFS-Verwaltung bereinigen.

Antwort1

Ich habe im Code herumgeschaut, um zu sehen, was los war. Wenn der btrfs filesystem showBefehl verwendet wird, um alle Dateisysteme auf allen Geräten anzuzeigen, scannt er jedes Gerät und jede Partition darin /proc/partitions. Jedes Gerät und jede Partition wird untersucht, um festzustellen, ob eine „magische Zahl“ von BTRFS und eine zugehörige gültige Stammdatenstruktur am Offset 0x10040 vom Anfang des Geräts oder der Partition gefunden wurde.

Ich habe dann Hexedit auf einer Festplatte verwendet, die in meinem Fall falsch angezeigt wurde, und tatsächlich war da eine magische BTRFS-Nummer (das ist die ASCII-Zeichenfolge _BHRfS_M) aus meinen vorherigen Experimenten.

Ich habe diese magische Zahl einfach erreicht, indem ich einige Zeichen der Zeichenfolge mit "**" überschrieben habe, ebenfalls mithilfe von Hexedit, und die falschen Einträge sind wie von Zauberhand verschwunden!

verwandte Informationen