linux开机启动过程:
-
加电自检(检测bios)---》根据设置(如硬盘启动,cdrom)
-
查找MBR(主引导记录bootloader定义了如何启动当前硬盘上的操作系统,查找分区表,找到内核)
-
linux中grub实际上就是一个bootloader,可以引导windows,linux,unix,BSD等,grub分二段,第一段放在MBR中,第二段房子操作系统安装所在的分区上,groub引导后出现菜单选择菜单后,根据选择来启动对应操作系统的内核
-
加载内核,系统在这个时候会在groub的引导之下把内核读到内存中去,并在内存中解压展开,展开后内核要初始化,初始化读取根分区
-
加载根分区,读取/sbin目录,执行第一个init进程(这个进程是系统的初始化加载驱动挂载设备等)
-
加载init进程的时候需要读取/etc/inittab配置文件,而/etc/inittab下定义了init怎么工作,以及默认的运行级别和系统加载的初始化脚本/etc/rc.d/rc.sysinit
-
由/etc/rc.d/rc.sysinit最终实现系统的初始化(完成设置网络、主机名、加载文件系统等初始化工作)
-
初始化后进入默认的级别需要的脚本/etc/rc.d/rc3.d(这个文件里所有脚本都是链接指向/etc/init.d/*)
-
系统初始化结束的时候,运行服务文件并执行/etc/rc.d/rc.local
-
启动mingetty启动一个虚拟终端,给你一个登陆界面。
本文转自327051661 51CTO博客,原文链接:http://blog.51cto.com/andyboge/1830633,如需转载请自行联系原作者