Linux系统开机启动顺序详解:探究基于Systemd初始化系统的启动流程

Linux 系统开机启动顺序在不同的发行版和初始化系统(如 SysV、Upstart 和 Systemd)中可能略有差异。

这里我们以 Systemd 为例,详细解释 Linux 系统开机启动的顺序。

Systemd 目前是许多主流 Linux 发行版(如 Ubuntu、Debian 和 CentOS)的默认初始化系统。

图片[1]-Linux系统开机启动顺序详解:探究基于Systemd初始化系统的启动流程-不念博客

以下是 Linux 系统(基于 Systemd)的开机启动顺序:

  1. BIOS/UEFI:首先,计算机硬件通过 BIOS(基本输入/输出系统)或 UEFI(统一可扩展固件接口)完成自检和初始化。在这个阶段,硬件资源被分配,设备顺序被确定。
  2. Bootloader:BIOS/UEFI 将控制权交给 Bootloader(如 GRUB)。Bootloader 负责加载 Linux 内核并设置相关参数。用户可以在这个阶段选择操作系统(如果有多个系统安装在同一台机器上)或修改内核参数。
  3. Linux 内核启动:Bootloader 加载 Linux 内核并执行它。内核对系统硬件进行探测、初始化硬件驱动、设置内核参数,并启动内核空间的进程。
  4. Init 进程:内核启动后,会创建并运行第一个用户空间进程,即 Init 进程(在 Systemd 系统中,这是 systemd 进程)。Init 进程的进程 ID(PID)总是 1。
  5. 系统服务启动:systemd 进程会根据系统配置文件(如 /etc/systemd/system/lib/systemd/system 目录下的 .service 文件)启动各种系统服务。这些服务包括硬件管理、网络配置、日志记录、数据库、Web 服务器等。systemd 支持并行启动服务,从而加快系统启动速度。
  6. 运行级别/目标:在 SysV 初始化系统中,Linux 系统有不同的运行级别(如单用户模式、多用户模式和图形模式等)。而在 Systemd 中,这些运行级别被称为“目标”(Target)。systemd 将根据默认或配置的目标启动相应的服务。例如,在图形模式下,systemd 会启动显示管理器(如 GDM、LightDM 等)。
  7. 用户登录:系统启动完成后,用户可以登录到系统。登录后,用户可以运行各种应用程序和服务,如桌面环境、终端、Web 浏览器等。

这就是 Linux 系统(基于 Systemd)的开机启动顺序。虽然不同发行版和初始化系统之间可能存在一些差异,但大致流程是相似的。

© 版权声明
THE END
喜欢就支持一下吧
点赞87赞赏 分享
评论 抢沙发
头像
欢迎光临不念博客,留下您的想法和建议,祝您有愉快的一天~
提交
头像

昵称

取消
昵称代码图片

    暂无评论内容