#!/bin/bash if [ -z "$1" ] || [ -z "$2" ]; then echo "Usage: $0 prefix snapshot" exit 1 fi set -eu PREFIX="$1" SNAPSHOT="$2" DATASET="${SNAPSHOT%@*}" MOUNTPOINT="${PREFIX}/$(echo "$DATASET" | cut -d@ -f1 | cut -d/ -f2- | tr '/' '_')" if [ "$(zfs get -H -o value backup:skip "$DATASET")" = "true" ]; then exit 0 fi set -x mkdir -p "$MOUNTPOINT" mount -t zfs "$SNAPSHOT" "$MOUNTPOINT"