Linux系统的启动过程可以分为以下5个关键阶段,每个阶段完成特定的初始化任务:
vmlinuz-xxx
)加载到内存。root=/dev/sda1
)挂载真正的根目录(/
),释放initramfs。/sbin/init
(现代系统通常为systemd
)。unit
),处理依赖关系。/etc/inittab
顺序串行启动服务脚本(/etc/rc.d/rc*.d/
)。multi-user.target
或graphical.target
。runlevel 5
为图形界面)。getty
进程,提示命令行登录。/boot/grub2/grub.cfg
(GRUB配置文件)/etc/default/grub
(GRUB参数)/etc/fstab
(文件系统挂载表)/etc/systemd/system/default.target
(Systemd默认目标)dmesg
查看内核日志。systemd-analyze blame
分析启动耗时服务。通过这5个阶段,Linux系统从硬件加电到用户可用的完整环境就准备就绪了。不同发行版可能在细节上有差异(如使用Upstart或OpenRC),但整体流程一致。