2012年(28)
分类: LINUX
2012-09-03 17:26:30
系统启动过程
第一阶段:当系统加电后,先加载BIOS确定引导的设备(例如网络,cdrom,硬盘等)。例如:BIOS从硬盘引导系统,先加载MBR(MBR位于磁道的最外圈0磁道,大小为512字节,446的引导器,64的分区表,2的校验码)。
第二阶段:读取boot分区下的/boot/grub/grub.conf文件,显示菜单选项并加载内核映像到内存中。如果boot没有单独设为分区的话,则读取/grub/grub.conf文件。
第三阶段:运行内核参数,加载必要的驱动,然后挂载根文件系统。内核和相关驱动文件存放在boot分区下。
第四阶段:读取/etc/inittab配置文件,确认启动级别。然后执行/etc/rc.sysinit用来读取/etc/fstab文件进行挂载分区,读取/etc/rc.d/rc.local创建用户自定义系统启动的内容。加载完前面的内容后,系统会根据系统的启动级别进行/etc/rc.d/rc*.d/目录下开启一些相对于的服务。例如当系统的启动级别为3时,则进行/etc/rc.d/rc3.d目录,在这个目录下的文件如果K开头的就是不启动,S开头的就是启动。完成上面操作后,系统就会启动一个getty一个程序显示登录界面和显示/etc/issue或/etc/issue.net这个文件的内容。当输入完用户名和密码时,系统会调用一个login程序去和/etc/passwd和/etc/shadow这2个文件进行比较,存在的话且密码正确后登录到系统,然后加载/etc/profile全局变量文件和家目录下的.bash_progile,.bashrc等家目录下用户自定义的系统环境配置文件。