Linux 命令行入门教程
72. 启动流程:UEFI→GRUB→内核→init
本教程共 90 篇 · 第 72 篇
72. 启动流程:UEFI→GRUB→内核→init
按下电源键到看到登录界面,中间其实过了一串关卡。搞懂它,以后系统起不来你才知道卡在哪。
第一关是主板固件,现在大多是 UEFI(老机器叫 BIOS)。它先跑一遍开机自检(POST),确认内存、硬盘都在,然后去找能启动的设备。
第二关是引导加载器,Ubuntu 用的是 GRUB。开机那两秒的菜单就是它,能让你选进哪个系统、用哪个内核版本。
第三关,GRUB 把 Linux 内核载入内存并启动。内核接管所有硬件,挂载根文件系统 /,准备好运行环境。
最后一关,内核启动第一个用户进程,叫 init。它负责把后续所有程序拉起来。在现在的 Ubuntu 上,这个 init 就是 systemd,进程号固定是 1(PID 1)。
Note老系统用 SysV init,靠一串脚本启动。systemd 改用并行启动加依赖管理,开机快很多。后面两章专门讲它。
小结:开机路径是 UEFI 自检 → GRUB 选内核 → 内核挂载根目录 → 启动 init(如今是 systemd,PID 1)。