1、Linux系统的启动流程如下图所示:
2、首先强调一点为限鬃鹣哺什么安装Linux系统一般来说都不需要我们手动安装驱动,这一点与windows有很大庐舌垩卫区别。主要因为在boot(不在内核中加载,grub引导时已经加载到内存了。)引导程序里有initramfs这个内存文件系统建立仿真根目录,就可以调用内核中的lib文件夹了,里面的驱动模块,比如usb ,sata,scsi硬盘的驱动和LVM,RAID文件系统的驱动就可以顺利加载了。
3、既然initramfs这个内存文件系统烂瘀佐栾这么重要,下面就来看看里面都有什么是怎样工作的。如下图所示:《1》 建立测试目玲膛宀耱录 mkdir /tmp/test《2》 复制initramfs文件 cp /boot/initramfs-2.3.32-279.el6.i686.img /tmp/test/ cd /tmp/initramfs //进入这个目录 file initramfs-2.3.32-279.el6.i686.img //查看得知是gz压缩格式《3》修改文件的后缀为.gz格式 mvinitramfs-2.3.32-279.el6.i686.img initramfs-2.3.32-279.el6.i686.img.gz《4》 gunzip initramfs-2.3.32-279.el6.i686.img.gz //解压缩 fileinitramfs-2.3.32-279.el6.i686.img 《5》 解压缩 cpio -ivcdu initramfs-2.3.32-279.el6.i686.img
4、运行级别参数传入/etc/rc.d/rc这个脚本文件之后,由这个脚本按照不同的运行级别启动/etc/rc[0-6].d/目录中的相应的程序,会按照数字的顺序启动或关闭。如下图所示:
5、通过以上的启动流程图我们可以看到,只要我们把自己写的脚本或者要开机启动的程序放在/etc/rc.d/rc.local中,就可以开机自启动了。