温馨提示×

ubuntu minimal启动过程

小樊
38
2025-12-10 12:57:50
栏目: 智能运维

Ubuntu Minimal 启动过程概览

  • 启动从固件开始,经历引导加载、内核与 initramfs、用户空间初始化,到登录与运行服务。与完整桌面版相比,Ubuntu Minimal 仅保留核心组件,默认不启动图形会话,启动更快、占用更小,但阶段划分与原理一致。关键阶段包括:BIOS/UEFI → Bootloader(GRUB)→ 内核与 initramfs → 用户空间初始化(早期用户态)→ 登录与服务

阶段详解

  • 固件阶段(BIOS/UEFI)
    • 上电执行 POST 自检,按启动顺序选择介质;传统 MBR 启动扇区以 0x55AA 结尾标识可启动设备;UEFI 则从 EFI 分区加载引导程序(如 EFI 文件)。
  • 引导加载阶段(GRUB)
    • 读取 /boot/grub/grub.cfg,显示菜单(如多系统或恢复项),加载指定的 vmlinuz 内核与 initrd/initramfs,并将控制权交给内核。
  • 内核与早期用户态
    • 内核解压并初始化,挂载 initramfs 作为临时根文件系统,加载必要驱动,定位并挂载真实根分区(可能涉及 LVM/加密/RAID),然后切换到真实根。
  • 用户空间初始化
    • 执行第一个用户空间进程(PID 1)。在较新的 Ubuntu 中通常是 systemd;在早期或极简系统中可见 UpstartSysV init 的行为特征(如读取运行级别、执行 rc 脚本)。
  • 登录与运行服务
    • 启动 getty 提供本地终端(如 tty1–tty6),或按需启动 SSH 服务;若安装并启用图形栈,则启动显示管理器(如 GDM)进入桌面;否则保持多用户文本模式运行。

与传统桌面版的关键差异

  • 默认不安装图形会话与显示管理器,启动到 多用户文本模式(运行级别通常为 3 而非 5)。
  • 服务集合更精简,仅保留核心系统服务,减少启动项与后台进程,从而缩短启动时间并降低内存占用。
  • 内核与 initramfs 机制相同,但模块与驱动集合更聚焦服务器/基础场景,必要时可手动增删。

故障排查与优化要点

  • 无法进入系统:在 GRUB 菜单按 e 临时编辑内核命令行,检查 root=init=ro/rwconsole 等参数;必要时从 LiveCD/救援模式检查分区与文件系统。
  • 根分区或 LVM/加密问题:确认 initramfs 包含相应模块(如 lvm2、cryptsetup);更新 initramfs 后重试。
  • 启动过慢:排查 systemd 服务与挂载点(如网络挂载、慢速设备);使用 systemd-analyze blame/plot 定位耗时单元。
  • 登录问题:检查 /etc/passwd/etc/shadowPAM 配置;确认 getty@tty1.service 或 SSH 服务已启用并运行。

0