Table of Contents

Boot Linux

Boot process1:

  1. Initialization and Boot Loader Phase
  2. Kernel Phase
    • Initial Ramdisk (initramfs)
    • init on initramfs
      • Loading Kernel Modules
      • Providing Block Special Files
      • Managing RAID and LVM Setups
      • Managing the Network Configuration
  3. (userspace) init phase
    • usually systemd

EFI

EFISTUB (boot kernel directly)

Arch Linux

EFISTUB Arch wiki entry

efibootmgr --disk /dev/sdX --part Y --create --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux.img' --verbose

if you need ucode, add it as first initramfs:

… initrd=/cpu_manufacturer-ucode.img initrd=/initramfs-linux.img

Grub2

Debian

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
update-grub

dual boot with other systems

Windows

Windows gets the time wrong

Reason: Clock is set in UTC, Windows thinks it's local time.

Solution:

See also: https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts

Troubleshooting

show boot options (Kernel command line) cat /proc/cmdline

Further reading