Das Btrfs-Dateisystem verwendet die Begriffe subvolume
, root-volume
, snapshot
, top-level
, default subvolume
was mich etwas verwirrt.
Ein Beispiel ist diebtrfs-Wiki-Seite über Subvolumeswelche Staaten
Ein neu erstelltes Dateisystem ist ebenfalls ein Untervolume, das als Top-Level-Dateisystem bezeichnet wird und intern die ID 5 hat. Dieses Untervolume kann nicht entfernt oder durch ein anderes Untervolume ersetzt werden.
Wenn Sie jedoch Tools wie btrfs-progs
Befehle wie
- BTRFS-Untervolume-Liste
- btrfs-Untervolume anzeigen
zeigt, dass der Begriff Subvolume nicht wirklich auf das Rootvolume zutrifft (siehediese andere Frage). Außerdem ist der Begriff top-level
(wie aus der Ausgabe der obigen Befehle ersichtlich ist) nicht wirklich auf das Subvolume/Root-Volume mit der Subvolume-ID 5 beschränkt. Schließlich scheint es, dass Sie nie btrfs send
das Root-Volume, sondern nur Subvolumes erreichen können (wiederum im Gegensatz zu den obigen Definitionen).
Irgendeine Hilfe?
Antwort1
Am einfachsten lässt sich dies anhand einer Analogie zu ZFS erklären. Subvolumes in BTRFS sind funktional gleichwertig mit Zvols von ZFS, außer dass sie von Natur aus irgendwo im Dateisystem selbst verwurzelt sind.
Allgemeiner ausgedrückt besteht ein Subvolume aus einer Reihe von internen Datenstrukturen des Dateisystems, die größtenteils unabhängig vom Rest des Baums sind. Nach dieser Definition und den internen Code-Strukturen ist das Subvolume der obersten Ebene oder Root-Subvolume (Subvolume-ID 5) technisch gesehen ein Subvolume, wird aber von Befehlen, die Informationen zu Subvolumes anzeigen, speziell behandelt, da Sie damit viele der Dinge, die Sie mit regulären Subvolumes tun können, nicht tun können (Sie können beispielsweise keinen Snapshot des Root-Subvolumes erstellen und es auch nicht löschen). Aus Benutzersicht ist es nur dann von Bedeutung, dass das Root-Subvolume ein Subvolume ist, wenn es mit dem Mounten -o subvolid=5
eine Standard-Subvolume-Einstellung umgeht.