Linux Booting Process steps - RH

2019-12-28  本文已影响0人  OOM_Killer

了解 RHEL/Centos7 的Linux 启动过程十分重要,了解了Linux的启动过程,就很容易理解操作系统的运行级别问题。


Linux Booting Process steps

1. BIOS

当打开系统电源后,他将读取所有设备配置,并进行POST(加电自检)。这个过程是从系统固件(现代的通用扩展固件接口(UEFI)或经典的基本输入输出系统(BIOS))中开始。完成硬件的启动初始化后,将加载MBR(主引导记录)以用于进一步的启动过程。

2.MBR(主引导记录)

主引导记录位于Linux引导硬盘的第一个扇区,此信息是有BIOS预加载到ROM(只读存储器)中。MBR的大小仅为512字节,其中包含用于446字节用于引导操作启动的bootloader程序和64字节分区表还有2字节的“ Magic Number”(用于错误监测)。



MBR发现可引导设备,并将GRUB2引导加载程序加载到内存中,并将控制权转移给该可引导设备

3. GRUB2 (Grand Unified Bootloader 2)

加载引导加载程序。
GRUB 2配置文件位于/boot/grub2/grub.cfg ,是Centos 7 的默认引导程序。
在生成 grub.cfg 的配置文件时,grub2的默认配置来自 /etc/default/grub 文件中

#  cat /etc/default/grub
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

可以使用 grub2-mkconfig 生成一个 grub2 的配置文件。

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

intramfs

4. 加载内核

5. 启动systemd

内核开始以pid 1 启动 systemd 进程

systemd 进入系统后开始执行系统初始化任务如

  1. 设定主机名
  2. 初始化网络
  3. 初始化SeLinux
  4. 设置欢迎标语
  5. 初始化硬件
  6. 挂在文件系统
  7. 清理 var 等
上一篇 下一篇

猜你喜欢

热点阅读