For general interest, here’s some info on booting, LUKS, GRUB, their interactions etc.
If you see errors or have other good stuff, drop it in.
I currated this through my living hell here :
TERMS
BIOS: Basic Input Output Stream
EPROM: Erasable Programmable Read Only Memory
GRUB: GRand Unified Bootloader
SEQUENCE
PureOS :
-
SeaBIOS
Lives on EPROM chip since it controls disks (can’t live on one), and needs acces pre-boot (can’t live in RAM) -
GRUB
Lives one of many places ( boot block, boot partition, {OS_ROOT}/boot, on a USB, packages, stuffed and signed to EPROM…) allows for selection of kernel to load and handoff to.
BOOTING
https://linoxide.com/booting/boot-process-of-linux-in-detail/
BIOS / Bootloaders
CoreBoot
https://www.coreboot.org/Payloads#Bootloaders
https://www.coreboot.org/SeaBIOS
https://www.coreboot.org/GRUB2
MANUALS
https://www.coreboot.org/SeaBIOS
INFO & TUTORIALS (man is your friend)
General boot etc…
GRUB Manual
man update-initramfs
update-initramfs -c -kall
LUKS / Encryption
man cryptsetup
curious about what’s available? → cryptsetup benchmark
Concise explanation of available ciphers and how to compare them on your system.
Good description of key create/decrypt routine
(Old) discussion about LUKS ciphers
(Old) pretty good explanation of how ciphers apply to LUKS
GRUB
man grub-install
man grub-mkimage
man grub-mkconfig
man these too!
/usr/sbin
grub-bios-setup grub-install grub-macbless grub-mkconfig grub-mkdevicemap grub-probe grub-reboot grub-set-default
/usr/bin
update-grub update-grub2 upgrade-from-grub-legacy grub-editenv grub-file grub-fstest grub-glue-efi grub-kbdcomp grub-menulst2cfg grub-mkfont grub-mkimage grub-mklayout grub-mknetdir grub-mkpasswd-pbkdf2 grub-mkrelpath grub-mkrescue grub-mkstandalone grub-mount grub-ntldr-img grub-render-label grub-script-check grub-syslinux2cfg
LUKS, Linux, LVM
PureOS specific
PureOS installation issues
What works (as of 11/10/2019), current Live installer:
- ERASE DISK install with Encryption
- ERASE DISK install with NO Encyption
- The methods here although you get a dinky /boot that’s too small for a
grub-install /dev/sdaand cannot use Adnvanced method to LUKS anything, currently (bugs out on a /tmp read only mount)
What doesn’t work:
- Nearly any other configuration or option.
May, 2019: T750 Partitioning is WHACK!
April, 2019: T751 Partitioning is WHACK!
April, 2019: T752 Partitioning is WHACK!
April, 2019: T778 Partitioning is WHACK!
May, 2018 OEM is gramattically/syntactically confusing!
NVMe
…which seems cool maybe