diff --git a/scripts/create-a-crypted-btrfs-device.sh b/scripts/create-a-crypted-btrfs-device.sh index 5a430f7..b0f39d0 100755 --- a/scripts/create-a-crypted-btrfs-device.sh +++ b/scripts/create-a-crypted-btrfs-device.sh @@ -1,8 +1,11 @@ #!/usr/bin/env sh +[[ -v DEBUG ]] && set -x + : ${DEVICE:?not set} : ${LABEL:?not set} +: "${MAPPER_NAME:=${LABEL// /}}" : "${MOUNT_OPTIONS:=compress-force=zstd}" : "${MOUNT_POINT:=/mnt/$LABEL}" : "${USERNAME:=root}" @@ -13,19 +16,21 @@ [[ -b "$DEVICE" ]] || (echo "${DEVICE} not found" >&2 && exit 1) cryptsetup luksFormat "$DEVICE" -cryptsetup open "$DEVICE" "$LABEL" +cryptsetup open "$DEVICE" "$MAPPER_NAME" -mkfs.btrfs --label "$LABEL" "/dev/mapper/${LABEL}" +mkfs.btrfs -f --label "$LABEL" "/dev/mapper/${MAPPER_NAME}" mkdir -p "$MOUNT_POINT" -mount -t btrfs -o "$MOUNT_OPTIONS" "/dev/mapper/${LABEL}" "$MOUNT_POINT" +mount -t btrfs -o "$MOUNT_OPTIONS" "/dev/mapper/${MAPPER_NAME}" "$MOUNT_POINT" btrfs subvolume create "$MOUNT_POINT/.snapshots" btrfs subvolume create "$MOUNT_POINT/data" -chown "$USER":"$USER" "$MOUNT_POINT/data" +chown "$USERNAME":"$GROUPNAME" "$MOUNT_POINT/data" -if [[ "$CLOSE_WHEN_DONE" ]] +if [[ "$CLOSE_WHEN_DONE" == false ]] then umount "/mnt/${LABEL}" - cryptsetup close "$DEVICE" + cryptsetup close "/dev/mapper/${MAPPER_NAME}" fi + +[[ -v "$DEBUG" ]] && set +x diff --git a/scripts/create-a-crypted-zfs-device.sh b/scripts/create-a-crypted-zfs-device.sh index ad518b4..374899c 100755 --- a/scripts/create-a-crypted-zfs-device.sh +++ b/scripts/create-a-crypted-zfs-device.sh @@ -1,5 +1,7 @@ #!/usr/bin/env sh +[[ -v DEBUG ]] && set -x + : ${DEVICE:?not set} : ${POOL_NAME:?not set} @@ -24,3 +26,5 @@ zfs create "${POOL_NAME}/${DATASET_NAME}" chown "$USERNAME":"$GROUPNAME" "${MOUNT_POINT}/${DATASET_NAME}" [[ "$UNMOUNT_WHEN_DONE" ]] && zfs unmount "${POOL_NAME}/${DATASET_NAME}" + +[[ -v DEBUG ]] && set +x