diff options
author | root <root@truenas.local> | 2024-08-15 20:10:27 +0100 |
---|---|---|
committer | root <root@truenas.local> | 2024-08-15 20:10:27 +0100 |
commit | 973c926bd2991e7e10510f74bf90b6070a93f528 (patch) | |
tree | 9f073087185b4533678ee2020c1337eba3295613 | |
parent | f189cf7a71e1461febeb87376278b8ada127e94c (diff) | |
download | BetterZFSReplication-973c926bd2991e7e10510f74bf90b6070a93f528.tar.gz BetterZFSReplication-973c926bd2991e7e10510f74bf90b6070a93f528.zip |
Added single script
-rwxr-xr-x | do_replicate.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/do_replicate.sh b/do_replicate.sh new file mode 100755 index 0000000..d3b9cbe --- /dev/null +++ b/do_replicate.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +DEST_URL=$1 +SRC_POOL=$2 +DEST_POOL=$3 + +OLD_SNAP=$(ssh root@$DEST_URL "zfs list -t snapshot -o name $DEST_POOL | tail -n1" | cut -d "@" -f2) +NEW_SNAP=$(zfs list -t snapshot -o name $SRC_POOL | tail -n1 | cut -d "@" -f2) + +echo "Old snapshot: '$OLD_SNAP'" +echo "New snapshot: '$NEW_SNAP'" + +if [ "$OLD_SNAP" = "$NEW_SNAP" ]; then + echo "Up to date, nothing to do..." +else + zfs send -Rw -I "$SRC_POOL"@"$OLD_SNAP" "$SRC_POOL"@"$NEW_SNAP" -s | pv | ssh root@DEST_URL "zfs recv -Fvdu $DEST_POOL" +fi |