Datensicherung mit Btrfs und Snapper

Hinweis: In dem Thema Datensicherung mit Btrfs und Snapper gibt es 12 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Das Dateisystem Btrfs wird langsam aber sicher stabil genug für den produktiven Einsatz.
    Nicht mehr lange, und fast alle Linux-basierten Distributionen werden btrfs als Standarddateisystem nutzen.


    Btrfs verspricht einige neue Funktionen, unter anderem die, des automatischen Dateisicherns.
    openSUSE unterstützt bereits seit Version 11.3, als erste nennenswerte Linux-Distribution, das Dateisystem btrfs.



    Mit dem Snapshot-Tool "Snapper" lassen sich die sogenannten "Snapshots" ganz einfach einrichten.


    Diese Anleitung soll den Einstieg/Umstieg zu btrfs erleichtern, und die grundlegende Einrichtung von Btrfs mithilfe von Snapper verdeutlichen.

    Index:

    - Btrfs bei der Installation
    - Sicherheitshinweise
    - Grundkonfiguration
    - Eigene Dateien sichern
    - Manuelles sichern
    - Konfiguration und Snapshots auslesen
    - Snapshots löschen
    - Snapshots löschen nach Zeiplan/Anzahl
    - Snapper in YaST benutzen
    - Änderungen anzeigen mit YaST
    - Sicherungen mit YaST wiederherstellen
    - Informations- und Bildquellen

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    3 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42524 haftet ausdrücklich der jeweilige Autor: lush

  • Um Btrfs später unter openSUSE überhaupt nutzen zu können, muss es bei der Installation erst aktiviert werden.
    Unter dem Abschnitt "Festplatte" bei der Installation mithilfe von YaST, muss der Haken bei

    Zitat

    Use Btrfs as Default-Filesystem

    gesetzt sein.
    (Siehe Screenshot)

  • Solange Btrfs noch nicht völlig ausgereift ist, ist es sinnvoll die Daten ab und zu extern zu sichern, denn Btrfs kann die Daten eines beschädigten Dateisystems nicht zuverlässig wiederherstellen.


    Dazu kommt folgendes:
    Wenn während des Anlegens eines Snapshots eine Datei verändert wird, ist das Backup evtl. unbrauchbar.
    Die Tools btrfsck und btrfs scrub versuchen dieses Dateien zwar wiederherzustellen, und werden durchgehend weiterentwickelt, aber es ist nicht garantiert, dass die Tools die unbrauchbaren Daten zuverlässig wiederherstellen.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Für den Inhalt des Beitrages 42526 haftet ausdrücklich der jeweilige Autor: lush

  • Nachdem nach einer frischen Installation mit aktiviertem Btrfs einige Aktualisierungen auf die Festplatte gespielt wurden, steht das Tool snapper, bereits konfiguriert, zur Verfügung.


    Standardmäßig sichert Snapper nichts, man muss es explizit anweisen, von einem bestimmten Verzeichnis ein Snapshot (stündlich) anzulegen.


    Eine Konfiguration für das Root-Verzeichnis existiert schon nach der Installation von openSUSE, diese muss allerdings erst aktiviert werden (Terminal :(



    Code
    sudo snapper create-config /

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42527 haftet ausdrücklich der jeweilige Autor: lush

  • Falls das Home-Verzeichnis (wie standardmäßig ausgewählt) auf einer Extra-Partition ausgelagert ist, muss Snapper explizit angewiesen werden auch dieses Verzeichnis zu sichern.


    Der Befehl hierzu (wieder stündliche Sicherung) lautet:


    Code
    sudo snapper -c home create-config /home

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42528 haftet ausdrücklich der jeweilige Autor: lush

  • Um ein Manuelles Snapshot der eigenen Daten anzulegen, wird der folgende Befehl genutzt:


    Code
    sudo snapper -c home create -d "Beschreibungstext"


    Dazu muss der vorherige Beitrag abgearbeitet sein.


    Um ein Manuelles Snapshot des Root-Verzeichnisses anzulegen, wird der folgende Befehl genutzt:


    Code
    sudo snapper create -d "Beschreibungstext"

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Für den Inhalt des Beitrages 42529 haftet ausdrücklich der jeweilige Autor: lush

  • Der Befehl

    Code
    sudo snapper list-configs


    listet alle eingerichteten Konfigurationen auf.


    Beispiel:

    Code
    tim@linux:~> sudo snapper list-configs
    Config | Subvolume
    --------+--------------
    root	| /
    home  | /home
    tim@linux~>


    Um nun die genauen Snapshots der einzelnen Konfiguationen ausgeben zu lassen, dient folgender Befehl:


    Code
    sudo snapper -c home list


    (Auch hier muss eine Konfiguration für /home eingerichtet sein, wie hier gezeigt)


    Der Befehl

    Code
    sudo snapper list


    listet demnach alle Sicherungen des Root-Verzeichnisses auf.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Für den Inhalt des Beitrages 42530 haftet ausdrücklich der jeweilige Autor: lush

  • Btrfs führt zwar ein inkrementelles Backup durch, dass heißt es werden nur die Änderungen gesichert und nicht alles, wie bei einem absoluten Backup üblich, aber es kann trotzdem passieren, dass der Platzverbrauch zu enorm wird.


    Einzelne Snapshots in jeder Konfiguration haben eine eindeutige ID, diese wird benötigt, um einen bestimmten Snapshot zu löschen.
    Wie man diese ID bekommt, beschreibt bereits der Abschnitt Konfiguration und Snapshots auslesen.


    Zum eigentlichen löschen wird nun ein anderer Befehl verwendet:

    Code
    sudo snapper -c [Konfiguration] delete [id]



    Der Befehl, um den 3 Snapshot aus der Konfiguration home zu löschen lautet demnach:

    Code
    sudo snapper -c home delete 3


    Der 2 Snapshot aus dem Root-Verzeichnis wird mit:

    Code
    sudo snapper delete 2


    gelöscht.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    3 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42535 haftet ausdrücklich der jeweilige Autor: lush

  • Snapper löscht die stündlich angelegten Sicherungen automatisch.
    Von den Sicherungen werden maximal zehn pro Tag, Monat und Jahr behalten.


    Um dies zu erreichen setzt Snapper den Lösch-Algorithmus auf timeline
    Um Snapper manuell angelegte Snapshots automatisch löschen zu lassen, lautet der Befehl (zur Änderung):

    Code
    sudo snapper -c [Konfiguration] modify -c [Konfiguration] timeline [id]


    Für die eigenen Daten, wäre der Befehl also:

    Code
    sudo snapper -c home modify -c home timeline [id]


    Um die timeline beim anlegen eines manuellen Snapshots einzuschalten, wird folgender Befehl verwendet:

    Code
    sudo snapper -c [Konfiguration] create -c timeline


    Soll das löschen nicht nach einem Zeitplan, sondern nach einer Anzahl erfolgen, wird statt timeline number verwendet:

    Code
    sudo snapper -c [Konfiguration] create -c number


    Mit der Option number werden bis zu 100 Sicherungen behalten.

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    Einmal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42533 haftet ausdrücklich der jeweilige Autor: lush

  • Falls das Plugin zu Snapper für YaST nicht installiert ist (warum auch immer), kann dieses wie folgt nachinstalliert werden:


    In den Standard-Repositories ist ein grafischer Frontend in Form eines Plugins für YaST erhältlich.



    Das zu installierende Paket "schimpft" sich

    Code
    yast2-snapper


    Installieren kann lässt es sich ganz einfach mithilfe von

    Code
    YaST - Software installieren oder löschen - suche nach "yast2-snapper"


    oder mithilfe eines Terminals (bzw. Zypper :(

    Code
    sudo zypper in yast2-snapper

    ___________________________________________________________________________________
    Zypper Befehlsreferenz

    6 Mal editiert, zuletzt von LusH ()

    Für den Inhalt des Beitrages 42537 haftet ausdrücklich der jeweilige Autor: lush