开机――是件很简单的事情,只要按下电源开关,然后系统就会自然启动,很多人认为没有什么需要学习的。其实不然,如果系统没有什么问题,可以正常登陆的时候,当然开机很简单。但更多的时候,我们需要知道当机子不能正常开机的如何解决,这才是我们学习的目的。
 那么我们就来分析一下Linux的开机流程系统开机的过程可以汇整成下面的流程:


       1.加载BIOS的硬件信息、进行自我测试,并依据设定获得第一个可开机的设备;
                    2.
读取并执行第一个开机设备内MBRboot Loader(grub等程序)
                    3.
依据boot loader的设置加载KernelKernel会开始检测硬件与加载驱动程序;
                    4.
内核启动init
                    5.
系统初始化根据/etc/init/rcS.conf文件中的记录exec/etc/rc.d/rc.sysinit”执行rc.sysinit系统初始化脚     本
                    6.init
找到/etc/inittab文件,确定默认的运行级别(X) 根据/etc/init/rcS.conf文件中的记录“exec telinit $runlevel
                    7.
触发相应的runlevel事件(根据/etc/init/rc.conf文件中的记录“exec /etc/rc.d/rc$RUNLEVEL)
                    8.
开始运行/etc/rc.d/rc,传入参数X
                    9./etc/rc.d/rc
脚本进行一系列设置,最后运行相应的/etc/rcX.d/中的脚本
                    10./etc/rcX.d/
中的脚本按事先设定的优先级依次启动
                    11.
最后执行/etc/rc.d/rc.local
                    12.
加载终端或X-Window接口