Product SiteDocumentation Site

Boot Process, Init, and Shutdown

An important and powerful aspect of Fedora is the open, user-configurable method it uses for starting the operating system. Users are free to configure many aspects of the boot process, including specifying the programs launched at boot-time. Similarly, system shutdown gracefully terminates processes in an organized and configurable way, although customization of this process is rarely required.
Understanding how the boot and shutdown processes work not only allows customization, but also makes it easier to troubleshoot problems related to starting or shutting down the system.

F.1. The Boot Process

Below are the basic stages of the boot process:
  1. The system loads and runs a boot loader. The specifics of this process depend on the system architecture. For example:
    • BIOS-based x86 systems run a first-stage boot loader from the MBR of the primary hard disk that, in turn, loads an additional boot loader, GRUB.
    • UEFI-based x86 systems mount an EFI System Partition that contains a version of the GRUB boot loader. The EFI boot manager loads and runs GRUB as an EFI application.
  2. The boot loader loads the kernel and a small, read-only filesystem into memory. This filesystem, or initramfs, contains all the tools required for the kernel to continue the boot process.
  3. The kernel transfers control of the boot process to the system daemon, systemd.
  4. systemd loads needed services and user-space tools, and mounts filesystems listed in /etc/fstab.
  5. The user is presented with a login screen for the freshly booted Linux system.
Because configuration of the boot process is more common than the customization of the shutdown process, the remainder of this chapter discusses in detail how the boot process works and how it can be customized to suit specific needs.