Linux Boot & Init — UEFI/Secure Boot, GRUB, initramfs/dracut, Early Userspace

Parent: DevOps, Infrastructure & Observability · Published reference · snapshot 2026-09-08 · skill devops-linux-internals/references/linux-boot-init.md

↓ Facts as markdownall context files

On a modern machine the boot is a chain of trust and handoffs, each stage finding, optionally

These notes link each claim to its source. Some citations identify archived research reports that are no longer hosted on this site. A published reference means the content is available; it does not certify independent review or accuracy.Read the editorial policy and follow the sources before relying on a claim.

Overview

1. UEFI firmware, the ESP, and boot entries

2. Secure Boot — the signature-verification chain

3. The boot loader — GRUB 2 vs systemd-boot

4. The kernel command line

5. The initramfs / initrd — early userspace

6. Measured boot & TPM-bound unlock

Methodology — reading a boot end to end

Practical Patterns

Anti-Patterns

References

Where this helps

Project ideas

Common mistakes

Known issues

Children

Frontier under this node: Boot-failure troubleshooting (dracut emergency shell, rd.break stages, VFS unable to mount root, grub rescue, rebuilding a broken initramfs), GRUB 2 (boot.img/core.img stages, grubx64.efi, generated grub.cfg via grub-mkconfig/update-grub, menuentry linux/initrd, BLS Type 1 entries, grubby/kernel-install), Kernel command line (root=, rd.* dracut params, init=/systemd.unit handoff, diagnostics quiet/loglevel/nomodeset), Measured boot & TPM-bound unlock (TPM2 PCR 4/7/11/12/13, systemd-cryptenroll, systemd-measure signed PCR11, systemd-pcrlock), Secure Boot signature chain (PK/KEK/db/dbx, Microsoft-signed shim, distro embedded cert, MOK/MokManager/mokutil, SBAT generation-based revocation, kernel lockdown), The switch_root / pivot_root handoff to PID 1 and shutdown jump-back to /run/initramfs/shutdown, Two initramfs execution models (systemd-in-initrd targets + /sysroot contract vs legacy dracut /init hook pipeline cmdline..pre-pivot..cleanup), UEFI firmware, the ESP, and boot entries (BootOrder/Boot#### EFI vars, efibootmgr, efivarfs, PEI/DXE/BDS, fallback BOOTX64.EFI), Unified Kernel Image (UKI) — systemd-stub, ukify, PE sections .linux/.initrd/.cmdline, signed cmdline+initrd, UAPI.5, initramfs/initrd early userspace (why it exists, CPIO-into-tmpfs, dracut build + hostonly vs no-hostonly, dracut modules, config), systemd-boot / sd-boot (UEFI-only, bootctl, auto-discovery of BLS Type1 + Type2 UKIs, loader.conf)

← the whole tree · 3D view· how to read this page