Arch Linux: UEFI Luks LVM (encrypted boot) (Part 1)
April 28, 2024 ┃ #linux #security
In Part 1 we set some vars first…
export DISK=sdb
export POOL=ARCH
export SWAPSIZE=8G
We use parted(8) for creating the disklayout
parted -s /dev/${DISK} mklabel gpt
parted -a optimal /dev/${DISK} mkpart primary 2048s 100M
parted -a optimal /dev/${DISK} mkpart primary 100M 100%
parted /dev/${DISK} set 1 boot on
Create encrypted disk with cryptsetup(8)
cryptsetup luksFormat --type luks1 /dev/${DISK}2
cryptsetup luksOpen /dev/${DISK}2 ARCH
Now we can use LVM to create the logic volumes
#Initialize physical volume
pvcreate /dev/mapper/${POOL}
#Create volume group
vgcreate ${POOL} /dev/mapper/${POOL}
#Create internal logical volumes
lvcreate -L 300M -n boot ${POOL}
lvcreate -C y -L ${SWAPSIZE} -n swap ${POOL}
lvcreate -L 35G -n root ${POOL}
lvcreate -l 100%FREE -n data ${POOL}
More to come in Part 2…