Files
ZFSBootMenu-Root-Install/partition.sh

63 lines
837 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
BASEDIR="$(dirname "${0}" | sed "s|^\.|${PWD}|")"
source \
/etc/os-release
source \
"${BASEDIR}/system.conf"
if [[ ! "${disk}" == **/dev/disk/by-id/** ]]; then
if [[ "${disk}" == **/dev/nvme** ]]; then
part3='p3'
else
part3='3'
fi
else
part3='-part3'
fi
swapoff \
--all
wipefs \
-a \
${disk}
if [[ ! "${diskType}" == 'HDD' ]]; then
blkdiscard \
-f \
${disk}
fi
sgdisk \
--zap-all \
${disk}
sgdisk \
-n1:0:+512M \
-t1:EF00 \
-c1:EFI \
${disk}
if [[ "${enableSwap}" == "yes" ]]; then
swapSize="$(((($(vmstat -sS M | grep 'total memory' | sed 's/ M total memory//') / 1024) + 1) * 2))"
if [[ "${swapSize#}" -gt '32' ]]; then
swapSize='32'
fi
sgdisk \
-n2:0:+${swapSize}G \
-t2:BF02 \
-c2:swap \
${disk}
fi
sgdisk \
-n3:0:0 \
-t3:BF00 \
-c3:${ID} \
${DISK}