Linux整个开机流程是:
1、载入BIOS的硬件信息,并取得第一个开机装置的代号
2、读取第一个开机装置的MBR的boot Loader(grub)的开机信息
3、载入OS Kernel信息,解压Kernel,尝试驱动硬件(initrd.img文件)
4、Kernel执行init程序并获得run-level信息(0~6),From /etc/inittab
5、init进程执行/etc/rc.d/rc.sysinit
6、启动内核外挂模块(/etc/modprobe.conf)
7、init执行run-level的各种Scripts,启动服务
8、init执行/etc/rc.d/rc.local
9、执行/bin/login,等待用户Login
10、Login后进入Shell
run-level:
0 -- 关机
1 -- 单用户
2 -- 不带网络的多用户
3 -- 带网络的多用户
4 -- 保留
5 -- GUI界面
6 -- 重启
BIOS中的硬件信息:
MBR(主引导记录),grub, BootLeader
init进程:
PID为1
嵌入式认证模块PAM:
验证用户密码,可以设置用户的登录方式等(本地登录,或者限制为从某个IP登录)