3.1.3. 第三阶段:迷你 Debian 系统

迷你 Debian 系统是启动流程的第三阶段,由引导加载程序启动。它会在内存中运行系统内核和根文件系统。这是启动流程的一个可选准备阶段。

[注意]注意

“迷你 Debian 系统”是笔者自创的术语,用于在本文档中描述启动流程的第三个阶段。这个系统通常被称为 initrd 或 initramfs 系统。内存中类似的系统在 Debian 安装程序中使用。

/init 程序是内存中的根文件系统上执行的第一个程序。这个程序在用户空间把内核初始化,并把控制权交给下一阶段。迷你 Debian 系统能够在主引导流程之前添加内核模块或以加密形式挂载根文件系统,使引导流程更加灵活。

  • 如果 initramfs 是由 initramfs-tools 创建,则”/init“ 程序是一个 shell 脚本程序。

    • 通过给内核添加 “break=init“ 等启动参数,你可以中断这部分启动流程以获取 root shell。更多中断条件请参见 ”/init“ 脚本。这个 shell 环境已足够成熟,你可通过它很好地检查机器的硬件。

    • 迷你 Debian 系统中可用的命令是精简过的,且主要由一个称为 busybox(1) 的 GNU 工具提供。

  • 如果 initramfs 是由 dracut 创建,则 “/init“ 程序是一个二进制 systemd 程序。

    • 迷你 Debian 系统中可用的命令是一个精简过的 systemd(1) 环境。
[小心]小心

当在一个只读的根文件系统上时,使用 mount 命令需要添加 -n 选项。