From 4e4358e517a03adadf5bd45d87384d8768d5faab Mon Sep 17 00:00:00 2001 From: Jochen Welzel Date: Thu, 7 Jan 2021 13:10:30 +0100 Subject: [PATCH] add backup:days as zfs value --- libvirt-zsh-backup.sh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/libvirt-zsh-backup.sh b/libvirt-zsh-backup.sh index f880a24..e00c483 100644 --- a/libvirt-zsh-backup.sh +++ b/libvirt-zsh-backup.sh @@ -31,8 +31,15 @@ then helpFunction fi +DAYS=$(zfs get backup:days -H -o value $SRCZFS) +if [[ $DAYS == "-" ]] +then + DAYS=7 +fi + +DAYS=$(($DAYS + 1)) DATE=$(date "+%Y%m%d%H%M") -DATE30=$(date -d "-30day" "+%Y%m%d") +DATEOLD=$(date -d -"$DAYS"day "+%Y%m%d") SNAPNAME="backup_$DATE" echo "$(date +%Y-%m-%d_%H:%M:%S): Starting Backup of $VM" @@ -133,7 +140,7 @@ zfs destroy tank/snapshots/$VM # cleanup old backups -OLDSNAPS=$(ssh $DESTHOST zfs list -r -t snapshot -o name $DESTZFS 2>/dev/null | grep $DATE30) +OLDSNAPS=$(ssh $DESTHOST zfs list -r -t snapshot -o name $DESTZFS 2>/dev/null | grep $DATEOLD) if [ ${#OLDSNAPS} -gt 0 ] then for oldsnap in $OLDSNAPS @@ -142,7 +149,7 @@ then ssh $DESTHOST sudo zfs destroy $oldsnap done else - echo "No old snapshots to cleanup" + echo "$(date +%Y-%m-%d_%H:%M:%S): No old snapshots to cleanup on target" fi echo "$(date +%Y-%m-%d_%H:%M:%S): Backup Completed"