diff --git a/README.md b/README.md index ea06f51..3ab8257 100644 --- a/README.md +++ b/README.md @@ -1 +1,181 @@ # zfs-keep-and-clean + +## Script sts23.sh +### Aufruf: +Aufruf: ./sts23.sh [Snapshotfilter] + + +## Script snpgrpdl.sh (neu) +Snapshots nach Datasets und Muster im Snapshotnamen filtern und ggf. löschen. +Es können alle bis auf die letzten x Snapshots behalten werden (-k keep). +Zu löschende Snapshots werden mit einem '-' gekennzeichnet. + +### Aufruf: +``` +root@zfsrasp~# ./snpgrpdl.sh -h + +Aufruf: snpgrpdl.sh [-htf] [-k keep] [Snapshotfilter] + + -h Hilfe Anzeigen + -t Testmodus. Simulation von löschen ohne Nachfragen (benötigt -k) + -f Echtmodus. Snapshots löschen ohne Nachfragen (benötigt -k) + -k Anzahl der letzten Snapshots die behalten werden sollen. + Rest wird gelöscht. Ohne -t oder -f kommt Abfrage ob gelöscht werden soll. +``` +### Beispiele: +Nur Filtern (ohne löschen): +``` +root@zfsrasp:~# ./snpgrpdl.sh backup frequent +# Gefilterte Datasets: + NAME USED AVAIL REFER MOUNTPOINT + backup 3.93M 3.62G 24K /backup + backup/smbshr 182K 3.62G 50.5K /backup/smbshr + +# Dataset: backup +# Snapfilter: frequent +# Anzahl Snaps: 4 +# Liste Snaps: + + backup@zfs-auto-snap_frequent-2021-01-01-2030 + + backup@zfs-auto-snap_frequent-2021-01-01-2045 + + backup@zfs-auto-snap_frequent-2021-01-01-2100 + + backup@zfs-auto-snap_frequent-2021-01-01-2115 + +# Dataset: backup/smbshr +# Snapfilter: frequent +# Anzahl Snaps: 6 +# Liste Snaps: + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1145 + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1200 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2030 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2045 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2100 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2115 + +root@zfsrasp:~# +``` +Interaktiv - Filtern und alle außer die letzten 10 löschen: +``` +root@zfsrasp:~# ./snpgrpdl.sh -k 10 backup$ daily +# Gefilterte Datasets: + NAME USED AVAIL REFER MOUNTPOINT + backup 4.00M 3.62G 24K /backup + +# Dataset: backup +# Snapfilter: daily +# Anzahl Snaps: 12 +# Behalte: 10 +# Anzahl Del. Snaps: 2 +# Liste Snaps: + - backup@zfs-auto-snap_daily-2020-12-21-0525 + - backup@zfs-auto-snap_daily-2020-12-22-0525 + + backup@zfs-auto-snap_daily-2020-12-23-0525 + + backup@zfs-auto-snap_daily-2020-12-24-0525 + + backup@zfs-auto-snap_daily-2020-12-25-0525 + + backup@zfs-auto-snap_daily-2020-12-26-0525 + + backup@zfs-auto-snap_daily-2020-12-27-0525 + + backup@zfs-auto-snap_daily-2020-12-28-0525 + + backup@zfs-auto-snap_daily-2020-12-29-0525 + + backup@zfs-auto-snap_daily-2020-12-30-0525 + + backup@zfs-auto-snap_daily-2020-12-31-0525 + + backup@zfs-auto-snap_daily-2021-01-01-0525 +> Snapshots (2 von 12) mit J löschen (Return = weiter): J +% zfs destroy wird ausgeführt: + will destroy backup@zfs-auto-snap_daily-2020-12-21-0525 + will reclaim 0B + will destroy backup@zfs-auto-snap_daily-2020-12-22-0525 + will reclaim 0B +% Liste nach zfs destroy: + + backup@zfs-auto-snap_daily-2020-12-23-0525 + + backup@zfs-auto-snap_daily-2020-12-24-0525 + + backup@zfs-auto-snap_daily-2020-12-25-0525 + + backup@zfs-auto-snap_daily-2020-12-26-0525 + + backup@zfs-auto-snap_daily-2020-12-27-0525 + + backup@zfs-auto-snap_daily-2020-12-28-0525 + + backup@zfs-auto-snap_daily-2020-12-29-0525 + + backup@zfs-auto-snap_daily-2020-12-30-0525 + + backup@zfs-auto-snap_daily-2020-12-31-0525 + + backup@zfs-auto-snap_daily-2021-01-01-0525 + +root@zfsrasp:~# +``` +Testmodus - löschen nur simulieren (ohne Nachfragen): +``` +root@zfsrasp:~# ./snpgrpdl.sh -t -k 5 backup$ daily +# Gefilterte Datasets: + NAME USED AVAIL REFER MOUNTPOINT + backup 3.98M 3.62G 24K /backup + +# Dataset: backup +# Snapfilter: daily +# Anzahl Snaps: 10 +# Behalte: 5 +# Anzahl Del. Snaps: 5 +# Liste Snaps: + - backup@zfs-auto-snap_daily-2020-12-23-0525 + - backup@zfs-auto-snap_daily-2020-12-24-0525 + - backup@zfs-auto-snap_daily-2020-12-25-0525 + - backup@zfs-auto-snap_daily-2020-12-26-0525 + - backup@zfs-auto-snap_daily-2020-12-27-0525 + + backup@zfs-auto-snap_daily-2020-12-28-0525 + + backup@zfs-auto-snap_daily-2020-12-29-0525 + + backup@zfs-auto-snap_daily-2020-12-30-0525 + + backup@zfs-auto-snap_daily-2020-12-31-0525 + + backup@zfs-auto-snap_daily-2021-01-01-0525 +# Testmodus - Für folgende Snapshots würde ein destroy ausgeführt: + backup@zfs-auto-snap_daily-2020-12-23-0525 creation Wed Dec 23 6:25 2020 - + backup@zfs-auto-snap_daily-2020-12-24-0525 creation Thu Dec 24 6:25 2020 - + backup@zfs-auto-snap_daily-2020-12-25-0525 creation Fri Dec 25 6:25 2020 - + backup@zfs-auto-snap_daily-2020-12-26-0525 creation Sat Dec 26 6:25 2020 - + backup@zfs-auto-snap_daily-2020-12-27-0525 creation Sun Dec 27 6:25 2020 - +root@zfsrasp:~# +``` + +Forcemodus - löschen ohne Nachfragen: +``` +root@zfsrasp:~# ./snpgrpdl.sh -f -k 6 backup frequent +# Gefilterte Datasets: + NAME USED AVAIL REFER MOUNTPOINT + backup 3.98M 3.62G 24K /backup + backup/smbshr 182K 3.62G 50.5K /backup/smbshr + +# Dataset: backup +# Snapfilter: frequent +# Anzahl Snaps: 4 +# Behalte: 6 +# Anzahl Del. Snaps: 0 +# Liste Snaps: + + backup@zfs-auto-snap_frequent-2021-01-01-2000 + + backup@zfs-auto-snap_frequent-2021-01-01-2015 + + backup@zfs-auto-snap_frequent-2021-01-01-2030 + + backup@zfs-auto-snap_frequent-2021-01-01-2045 +% Keine Snapshots zum löschen + +# Dataset: backup/smbshr +# Snapfilter: frequent +# Anzahl Snaps: 8 +# Behalte: 6 +# Anzahl Del. Snaps: 2 +# Liste Snaps: + - backup/smbshr@zfs-auto-snap_frequent-2020-12-21-2130 + - backup/smbshr@zfs-auto-snap_frequent-2020-12-21-2145 + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1145 + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1200 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2000 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2015 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2030 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2045 +% zfs destroy wird ausgeführt: + will destroy backup/smbshr@zfs-auto-snap_frequent-2020-12-21-2130 + will reclaim 0B + will destroy backup/smbshr@zfs-auto-snap_frequent-2020-12-21-2145 + will reclaim 0B +% Liste nach zfs destroy: + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1145 + + backup/smbshr@zfs-auto-snap_frequent-2020-12-28-1200 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2000 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2015 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2030 + + backup/smbshr@zfs-auto-snap_frequent-2021-01-01-2045 + +root@zfsrasp:~# +```