Wie erstelle ich einen Snapshot eines BTRFS-Root-Dateisystems (Snapshot von /)?

Wie erstelle ich einen Snapshot eines BTRFS-Root-Dateisystems (Snapshot von /)?

Ich habe Fedora 20 und habe mich bei der Installation aus vielen Gründen, vor allem aber, um Snapshots zur Verfügung zu haben, für btrfs als Dateisystem entschieden.

Aber ich kann anscheinend keinen Snapshot von erstellen /. Ich kann einen Snapshot meines Home-Ordners (der auch btrfs ist) wie folgt erstellen btrfs subvolume snapshot /home/ /snap/home, aber wenn ich versuche, einen Snapshot /durch Schreiben zu erstellen btrfs subvolume snapshot / /snap, wird nur ausgegeben ERROR: incorrect snapshot name ('/').

Ich bin sicher, dass / btrfs ist. gparted

Auflisten der Subvolumes-Ausgaben:

# btrfs subvolume list /
ID 256 gen 9562 top level 5 path home
ID 258 gen 9562 top level 5 path root
ID 306 gen 9517 top level 258 path snap/home/2014-08-15_00:44:00

Ist es nicht möglich, einen Snapshot des Stammordners zu erstellen, selbst wenn btrfs verwendet wird?

Antwort1

Sie müssen einen Namen für den Snapshot unter /snap angeben, z. B.

$ btrfs subvolume snapshot / /snap/root

Wenn Sie keinen Namen angeben, verwendet btrfs den Namen des Quellsubvolumes. In Ihrem Fall wird das Quellsubvolume aufgerufen, /was kein gültiger Name für den Snapshot ist.

usage: btrfs subvolume snapshot [-r] <source> <dest>|[<dest>/]<name>

    btrfs subvolume snapshot [-r] [-i <qgroupid>] <source> <dest>|[<dest>/]<name>

    Create a snapshot of the subvolume
    Create a writable/readonly snapshot of the subvolume <source> with
    the name <name> in the <dest> directory.  If only <dest> is given,
    the subvolume will be named the basename of <source>.

    -r             create a readonly snapshot
    -i <qgroupid>  add the newly created snapshot to a qgroup. This
                   option can be given multiple times.

Antwort2

Wenn Sie Ihr Wurzelsystem erhalten möchten, sollten Sie dies tun

mkdir /. snapshots
btrfs subvolume snapshot / /.snapshots/24072018
nano /.snapshots/24072018/etc/fstab

UUID=XXXXXXXX     /    btrfs    defaults, subvol=root/.snapshots/24072018  0      1

Heutzutage ist es bei Fedora üblich, beim Formatieren Ihres Systems mit btrfs ein Subvolume mit dem Namen „Root“ zu erstellen. Wenn Sie also die Option „Subvol“ in fstab nicht gefunden haben, lassen Sie „Root“ aus dem Subvol weg.

Der nächste Schritt ist ein Neustart Ihres Systems. Wenn das System startet, sehen Sie das Grub-Bootmenü.

  • Drücken Sie e auf dem Standardeintrag
  • Scrollen Sie nach unten, bis Sie die Option „subvol“ finden, wenn Fedora auf einem Subvolume installiert wurde. Wenn nicht, müssen Sie die Option „rootflags“ finden und Folgendes eingeben:

    • rootflags=subvol=.snapshots/24072018

      Oder für den Fall, dass das System auf einem Subvolume installiert wurde:

    • rootflags=subvol=root/.snapshots/24072018

Beachten Sie, dass die Option „Rootflags“ im Grub-Eintrag wahrscheinlich nicht angezeigt wird, wenn das System nicht auf einem Untervolume installiert wurde. Sie müssen daher den Parameter „Rootflags“ neben den Parameter „ro“ schreiben, damit dies funktioniert.

Nachdem Ihr System erfolgreich gebootet wurde, öffnen Sie das Terminal, melden Sie sich beim Root-Konto an und aktualisieren Sie Ihre Grub-Konfigurationen, wenn Sie die Änderungen dauerhaft machen möchten.

verwandte Informationen