diff options
author | Florian Pritz <bluewind@xinu.at> | 2015-03-15 23:51:26 +0100 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2015-03-15 23:51:26 +0100 |
commit | 964185d1a267ddcf79ac3517bc7145a141ea3c32 (patch) | |
tree | 0e802b995092682b3adefc47cecbb9b5fc830ab4 | |
parent | 1a0e2558fa5c27c77662834adb17357e3ecfdad7 (diff) | |
download | bin-964185d1a267ddcf79ac3517bc7145a141ea3c32.tar.gz bin-964185d1a267ddcf79ac3517bc7145a141ea3c32.tar.xz |
add zfs snapshot helpers
Signed-off-by: Florian Pritz <bluewind@xinu.at>
-rwxr-xr-x | zfs_create_dated_snapshot.sh | 12 | ||||
-rwxr-xr-x | zfs_snapshot_cleanup.sh | 14 |
2 files changed, 26 insertions, 0 deletions
diff --git a/zfs_create_dated_snapshot.sh b/zfs_create_dated_snapshot.sh new file mode 100755 index 0000000..11f94ef --- /dev/null +++ b/zfs_create_dated_snapshot.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +if (($#<2)); then + echo "usage: ${0##*/} <filesystem|volume> <snapshot prefix>" + exit 1 +fi + +filesystem=$1 +snapshotname=$2 +date="$(date +%FT%H:%M)" + +zfs snapshot "${filesystem}@${snapshotname}${date}" diff --git a/zfs_snapshot_cleanup.sh b/zfs_snapshot_cleanup.sh new file mode 100755 index 0000000..ba743ac --- /dev/null +++ b/zfs_snapshot_cleanup.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +if (($#<3)); then + echo "usage: ${0##*/} <filesystem|volume> <snapshot prefix> <number of snapshots to keep>" + exit 1 +fi + +filesystem=$1 +snapshotname=$2 +keep=$3 + +keep=$((keep+1)) + +zfs list -H -t snapshot -o name -S creation -d1 "$filesystem" | grep "^$filesystem@$snapshotname" | tail -n +$keep | xargs -r -n 1 zfs destroy -r |