Files
ventoy-usb-utils/part-sdb.sh

33 lines
1.3 KiB
Bash

#!/bin/bash
set -euo pipefail
if [[ $# -eq 0 ]]; then
read -rp "Root of or for device: " DEV_ROOT
elif [[ $# -gt 0 ]]; then
while getopts "d:" opt; do
case ${opt} in
d) DEV_ROOT="${OPTARG}";;
*) echo "${opt} is an invalid option.";;
esac
done
fi
if ! [ -f "${HOME}/Downloads/ventoy.tar.gz" ]; then
wget -O ventoy.tar.gz -P "${HOME}"/Downloads https://github.com/ventoy/Ventoy/releases/download/v1.0.99/ventoy-1.0.99-linux.tar.gz
fi
tar -xvf "${HOME}"/Downloads/ventoy.tar.gz -C "${HOME}"/Downloads/ventoy
rm "${HOME}"/Downloads/ventoy.tar.gz
mapfile -t DEV_SIZES < <(df -h "$DEV_ROOT" | awk '{print $2}')
GB_DEV_SIZE="${DEV_SIZES[-1]%?}"
MB_DEV_SIZE=$(( GB_DEV_SIZE * 1000 ))
VENTOY_LOWER_BOUND=$(( MB_DEV_SIZE - 18034 ))
"${HOME}"/Downloads/ventoy/Ventoy2Disk.sh -igsL Ventoy -r "$VENTOY_LOWER_BOUND" "$DEV_ROOT"
mapfile -t PART_LIST < <(parted "$DEV_ROOT" 'unit s print' | awk '{print $3}')
# parted "${DEV_ROOT}" mklabel gpt
sudo parted "$DEV_ROOT" mkpart TREASURY ntfs "${PART_LIST[-1]}" 76%
sudo parted "$DEV_ROOT" mkpart LAIR btrfs 76% 100%
sudo mkfs.exfat -L treasure "${DEV_ROOT}"3
sudo cryptsetup luksFormat "${DEV_ROOT}"4
sudo cryptsetup open "${DEV_ROOT}"4 LAIR
sudo mkfs.btrfs -d single -m DUP -L secrets /dev/mapper/LAIR
sudo cryptsetup close LAIR