diff options
author | Jesse Luehrs <doy@tozt.net> | 2023-10-08 12:09:20 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2023-10-08 12:59:10 -0400 |
commit | 49570c8dd03448240897b37b68567352b790f16f (patch) | |
tree | 6c192a52046d5d0dd1b84a838befd8e777cfeafb /local/.bin/cryptoloop | |
parent | 66939c71da756c1d9e07a88a4a8ea2a018650060 (diff) | |
download | conf-49570c8dd03448240897b37b68567352b790f16f.tar.gz conf-49570c8dd03448240897b37b68567352b790f16f.zip |
convert to stow
Diffstat (limited to 'local/.bin/cryptoloop')
-rwxr-xr-x | local/.bin/cryptoloop | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/local/.bin/cryptoloop b/local/.bin/cryptoloop new file mode 100755 index 0000000..493c74e --- /dev/null +++ b/local/.bin/cryptoloop @@ -0,0 +1,30 @@ +#!/bin/sh +set -eu + +command="$1" +name="$2" +file="${HOME}/crypt/${name}.luks" +dev="/dev/mapper/$name" + +case "$command" in +create) + size=$3 + count=${4:-1} + dd if=/dev/urandom of="$file" bs="$size" count="$count" iflag=fullblock + sudo cryptsetup luksFormat "$file" + sudo cryptsetup open "$file" "$name" + sudo mkfs.ext4 "$dev" + sudo mount "$dev" /mnt + sudo chown "$USER" /mnt + sudo umount /mnt + sudo cryptsetup close "$name" + ;; +open) + sudo cryptsetup open "$file" "$name" + sudo mount "$dev" /mnt + ;; +close) + sudo umount /mnt + sudo cryptsetup close "$name" + ;; +esac |