Momentan mache ich nächtliche und wöchentliche Schnappschüsse von meinem ZFS-basierten NAS, ein Vorgang, der mir ein paar Mal den Arsch gerettet hat. Während die Erstellung des Snapshots automatisch (von Cron) erfolgt, ist das Löschen alter Snapshots immer noch eine manuelle Aufgabe. Offensichtlich besteht die Gefahr, dass dem NAS der Speicherplatz ausgeht, wenn ich von einem Bus angefahren werde oder die manuelle Aufgabe nicht ausgeführt wird.
Hat jemand eine gute Möglichkeit / ein gutes Skript, um die Anzahl der auf seinen ZFS-Systemen gespeicherten Snapshots zu verwalten? Idealerweise hätte ich gerne ein Skript, das alle Snapshots für ein bestimmtes ZFS-Dateisystem durchläuft und alle Snapshots mit Ausnahme der letzten n für dieses Dateisystem löscht .
ZB habe ich zwei Dateisysteme, eines genannt tankund eines genannt sastank. Snapshots werden mit dem Erstellungsdatum benannt. sastank@AutoD-2011-12-13Ein einfacher sortBefehl sollte sie in der angegebenen Reihenfolge auflisten. Ich versuche, die täglichen Schnappschüsse tankder letzten zwei Wochen beizubehalten , aber nur die Schnappschüsse der letzten zwei Tage sastank.
sort -rvor demsedBefehl.sedscheint das Ende der Liste nach den ersten 15 Zeilen auszugeben, die in der Standard-Sortierung die aktuellste ist. Durch Umblättern der Liste erhalte ich die ältesten Schnappschüsse unten.