硬盘引导启动项设置(Linux 引导过程的 6 个阶段(启动顺序))


硬盘引导启动项设置(Linux 引导过程的 6 个阶段(启动顺序))

你或许曾对电脑启动过程中的 Linux 登录提示有所好奇,那么下面我们就来深入了解一下从按下电源按钮到出现 Linux 登录提示背后所经历的过程。这里我们将概述典型的 Linux 启动过程的六个重要阶段。

让我们先理解一个概念——BIOS。BIOS,也就是基本输入输出系统,在启动过程中执行一些系统完整性检查,并在软盘、CD-ROM或硬盘驱动器中查找并加载引导加载程序。这个过程也被称为MBR(主引导记录)的加载。BIOS的工作就是寻找并执行MBR中的引导加载程序。简单来说,BIOS启动并加载MBR引导加载程序。

接下来是MBR阶段,它位于可引导磁盘的第一个扇区,通常表示为/dev/hda或/dev/sda。MBR包含三部分信息:主引导加载程序、分区表信息以及mbr验证检查。在这个过程中,MBR将加载并执行GRUB(Grand Unified Bootloader)。GRUB是一个强大的启动加载器,允许用户在系统上选择执行多个内核映像。它显示了启动屏幕并等待你选择默认内核映像进行加载。GRUB的主要职责就是加载内核和initrd映像。

接着,我们进入内核阶段。内核挂载在grub.conf文件中指定的根文件系统,并执行/sbin/init程序。由于这是Linux内核执行的第一个程序,所以它的进程ID (PID)为1。内核还会用到initrd(初始RAM磁盘)。它被内核用作临时根文件系统,直到真正的根文件系统被挂载。它还包含内部编译的必要驱动程序,以访问硬盘驱动器分区和其他硬件。

初始化阶段则是通过查看/etc/inittab文件来确定Linux的运行级别。这个文件定义了系统在不同运行级别时应执行的操作和启动的服务。当Linux系统启动时,它会根据设定的运行级别启动各种服务。这些服务是从运行级别目录中执行的程序,根据默认初始化级别的设置来执行。

就是运行级别的程序阶段。在Linux系统启动过程中,你可能会看到各种服务正在启动的消息。这些就是运行级别的程序,它们从运行级别的目录中执行。这些程序中有以S和K开头的程序,分别代表启动和终止的程序。带有数字的程序表示启动或终止的序列号。例如,S12syslog表示序号为12的syslog守护进程启动程序。这些程序协同工作使得Linux系统从启动到登录流畅进行。


硬盘引导启动项设置(Linux 引导过程的 6 个阶段(启动顺序))