machine_setup/ansible/roles/zfs/files/zfs_clone_recv.bash
2023-05-03 00:15:33 -04:00

13 lines
617 B
Bash

#!/usr/bin/env bash
#
# A zfs-send alias that creates a perfect clone with good defaults.
set -euo pipefail
IFS=$'\n\t'
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# -s if the stream is interrupted, save the partial stream. The stream can then be resumed by doing a zfs send -t token where token is the receive_resume_token prop on the dataset we received into.
# -u Do not mount the filesystem we are receiving. We can always mount afterwards but this avoids issues with streams with mountpoints to places like /
exec zfs recv -s -u "${@}"
# To delete an interrupted recv, run `zfs receive -A dataset`