Open Source-Software findet in immer mehr Unternehmen und Behörden ihren Einsatz. Im Juli widmet IT-Administrator daher seinen Heftschwerpunkt der quelloffenen ... (mehr)

Snapshots entfernen

Um einen Snapshot komplett zu löschen, verwenden Sie den Befehl "delete". Das folgende Beispiel entfernt den Snapshot mit der Nummer 8:

snapper delete 8

Auf Wunsch erstellt Snapper mithilfe eines entsprechenden Cron-Jobs jede Stunde automatisch einen neuen Snapshot. Dazu müssen Sie nur in der entsprechenden Konfigurationsdatei den Punkt "TIMELINE_CREATE" von "no" auf "yes" setzen. Bei neu erstellten Konfigurationen ist das standardmäßig schon der Fall. Damit kommen aber auch jeden Tag 24 neue Snapshots hinzu. Damit die Snapshot-Flut nicht überhandnimmt, löscht Snapper selbstständig einmal am Tag ältere Snap­shots. Dabei bleiben standardmäßig die Snapshots der letzten zehn Stunden auf der Platte.

Zusätzlich hebt Snapper für jeden der vergangenen zehn Tage, jeden der letzten zehn Monate und jedes der vergangenen zehn Jahre einen Snapshot auf. Diese Zeiträume ändern Sie in der Konfigurationsdatei, indem Sie die Werte hinter "TIMELINE_LIMIT_HOURLY", "TIMELINE_LIMIT_DAILY", "TIMELINE_LIMIT_MONTHLY" und "TIMELINE_LIMIT_YEARLY" anpassen. Dazu müssen Sie übrigens nicht mit einem Texteditor die Konfigurationsdatei öffnen, auch "snapper" kann direkt die Einstellungen ändern.

Der folgende Befehl würde in der Konfigurationsdatei »home« die Einstellung "TIMELINE_CREATE" auf "no" setzen und somit die automatische Erstellung der Snapshots abschalten. Wichtig ist dabei, dass Sie den Wert in Anführungszeichen einschließen (im Beispiel "no"):

snapper -c home set-config TIMELINE_CREATE="no"

Die aktuell gültigen Einstellungen der Konfiguration "home" holen Sie sich mit dem Befehl »snapper -c home get-config« auf den Bildschirm.

Damit Snapper beim Aufräumen nicht Ihre mühsam per Hand erstellten Snap­shots löscht, kennzeichnet es seine automatisch erzeugten Snapshots. In der von "snapper list" ausgegebenen Tabelle tragen diese Snapshots in der Spalte "Bereinigen" die Kennung "timeline" (Bild 4). Nur diese Snapshots löscht Snapper nach dem beschriebenen Schema. Sie können auch einen eigenen Snapshot für die Timeline vormerken, wie etwa den mit der Nummer 8:

snapper modify -c "timeline" 8

Yast und Zypper erstellen ebenfalls recht häufig neue Snapshots – unter openSUSE mindestens bei jeder Aktualisierung. Daher löscht Snapper auch diese Snapshots, sobald sie ein bestimmtes Alter erreichen. Standardmäßig müssen die Löschkandidaten mindestens 30 Minuten alt sein, zudem verbleiben immer die letzten 50 Snapshots auf der Platte. Beide Werte können Sie in der Konfigurationsdatei anpassen, das Mindestalter in Sekunden hinter "NUMBER_MIN_AGE", die Anzahl der verbleibenden Snapshots hinter "NUMBER_LIMIT". Die diesem Löschverfahren unterliegenden Snapshots kennzeichnet Snapper in der Spalte "Bereinigen" mit "number". Einen eigenen Snapshot können Sie diesem Algorithmus wieder mit "snapper modify" unterwerfen:

snapper modify -c "number" 8
Bild 5: Das Snapper-Modul für Yast bietet derzeit noch nicht den vollen Funktionsumfang des Kommandozeilenprogramms.

Abschließend entfernt Snapper automatisch auch Paare aus Pre- und Post-Snapshot, bei denen es keinerlei Änderungen gab und die älter als 30 Minuten sind. Wenn Sie solche Paare behalten möchten, müssen Sie in der entsprechenden Konfigurationsdatei "EMPTY_PRE_POST_CLEANUP" auf "no" setzen. Das Mindestalter eines Paares gibt "EMPTY_PRE_POST_MIN_AGE" in Sekunden vor. Eine der drei Aufräumaktionen können Sie per Hand anstoßen:

snapper cleanup timeline

Mit diesem Befehl bereinigt Snapper umgehend die "timeline"-Snapshots nach dem bekannten Schema, statt bis zum nächsten Tag zu warten. Die anderen beiden Löschverfahren werfen Sie analog mit "number" und "empty-pre-post" an.

Snapper ohne Root-Rechte

Um dem User "tux" die Nutzung von Snapper zu gestatten, müssen Sie lediglich in der entsprechenden Konfigurationsdatei seinen Benutzernamen hinter "ALLOW_USERS" notieren, etwa über die folgende Anweisung:

snapper -c home set-config ALLOW_USERS="tux"

Mehrere Benutzer trennen Sie in den Anführungszeichen jeweils durch ein Leerzeichen. Alternativ oder ergänzend können Sie eine oder mehrere Benutzergruppen hinter "ALLOW_GROUPS" notieren. Den Benutzern muss allerdings der lesende Zugriff auf das entsprechende ".snapshot"-Verzeichnis gestattet sein.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023