How Linux Boots

From docwiki
Revision as of 14:37, 29 October 2020 by Mond (talk | contribs)
Jump to: navigation, search

Motivation

Nothing is more frustrating then not being able to boot into your system. If it hangs a boot with a cryptic message, then what do you do? People running other Operating Systems then tend to try to re-install their OS at this point. Once you know how Linux boots then it is almost always possible to boot into your system again as long as your hard-drive is not damaged.

Stages of Booting Linux

Simplified:

  1. your PC boots (BIOS from EEPROM chips on your motherboard. e.g when you press F12 during boot this is handled by the BIOS)
  2. loads the first ca 300 bytes from block 0 of your hard drive
  3. loads the rest of GRUB boot loader
  4. GRUB can readonly read most filesystems and load kernel (vmlinuz) and initial-ramdisk (initrd)
  5. kernel unpacks itself and intializes hardware
  6. kernel unpacks initial ramdisk and starts script there (e.g. /init )
  7. initial ramdisk scripts loads additional modules and mount real /
  8. starts init process. (today usually systemd)
  9. systemd runs boot scripts for all configured items. (e.g. ssh, X11, ..)