Skip to main content

Boot Loader

systemd-boot

Install

systemd-boot comes with systemd already, so no additional packages need to be installed

bootctl install

Configure

Loader

/boot/loader/loader.conf

default       arch
timeout       3
auto-entries  1
auto-firmware 1
console-mode  keep

Boot entry

/boot/loader/entries/arch.conf

title	Arch Linux
linux	/vmlinuz-linux
initrd	/amd-ucode.img
initrd	/initramfs-linux.img
options	root=/dev/mapper/vg0-lv_root rw rootflags=subvol=@ quiet splash amdgpu.dpm=0

Fallback

/boot/loader/entries/arch-fallback.conf

title	Arch Linux (fallback initramfs)
linux	/vmlinuz-linux
initrd	/amd-ucode.img
initrd	/initramfs-linux-fallback.img
options	root=/dev/mapper/vg0-lv_root rw rootflags=subvol=root quiet splash amdgpu.dpm=0

rEFInd

Install

pacman -S refind
refind-install

Configure

/boot/refind_linux.conf

"Boot using default options"     "root=/dev/mapper/vg0-lv_root rw rootflags=subvol=@ amdgpu.dpm=0 add_efi_memmap initrd=amd-ucode.img initrd=initramfs-%v.img"
"Boot using fallback initramfs"  "root=/dev/mapper/vg0-lv_root rw rootflags=subvol=@ amdgpu.dpm=0 add_efi_memmap initrd=amd-ucode.img initrd=initramfs-%v-fallback.img"
"Boot to terminal"               "root=/dev/mapper/vg0-lv_root rw rootflags=subvol=@ amdgpu.dpm=0 add_efi_memmap initrd=amd-ucode.img initrd=initramfs-%v.img systemd.unit=multi-user.target"

GRUB2

Install

Install GRUB for either target x86_64-efi or i386-pc. Install to a drive, not a partition!

pacman -S grub
grub-install --target=x86_64-efi /dev/nvme0n1

Configure

Set up /etc/default/grub with desired options and run

grub-mkconfig -o /boot/grub/grub.cfg