Upstart大致的一个启动过程: 1.内核启动init 2.系统初始化:(/etc/init/rcS.conf exec /etc/rc.d/rc.sysinit) 3.init找到/etc/inittab文件,确定默认的运行级别(X) (/etc/init/rcS.conf exec telinit $runlevel) 4.触发相应的runlevel事件(/etc/init/rc.conf exec /etc/rc.d/rc $RUNLEVEL) 5.开始运行/etc/rc.d/rc,传入参数X 6./etc/rc.d/rc脚本进行一系列设置,最后运行相应的/etc/rcX.d/中的脚本 7./etc/rcX.d/中的脚本按事先设定的优先级依次启动 8.最后执行/etc/rc.d/rc.local 9.加载终端或X-Window接口 /etc/rc.sysinit 脚本的功能: 1、获得网络环境 2、挂载设备 3、开机启动画面Plymouth(取替了过往的 RHGB) 4、判断是否启用SELinux 5、显示于开机过程中的欢迎画面 6、初始化硬件 7、用户自定义模块的加载 8、配置内核的参数 9、设置主机名 10、同步存储器 11、设备映射器及相关的初始化 12、初始化软件磁盘阵列(RAID) 13、初始化 LVM 的文件系统功能 14、检验磁盘文件系统(fsck) 15、磁盘配额(quota) 16、重新以可读写模式挂载系统磁盘 17、更新quota(非必要) 18、启动系统虚拟随机数生成器 19、配置机器(非必要) 20、清除开机过程当中的临时文件 21、创建ICE目录 22、启动交换分区(swap) 23、将开机信息写入/var/log/dmesg文件中