第一阶段:BIOS启动引导阶段
第二阶段:GRUB启动引导阶段
第三阶段:内核阶段
第四阶段:Sys V init初始化阶段
启动流程和细节详解
BIOS ==> bootloader ==> kernel & initrd.img ==> /sbin/init
1.bootloader (grub)
/boot/grub/grub.conf <-- grub的配置文件,决定使用哪个kernel和initrd.img
在/boot/grub目录中有两个stage文件,其中:
stage1 <--- 大小是512字节,这个文件会被写进MBR中
stage2 <--- stage1被引导之后,会调用这个文件
如果grub出现问题可能会有两种情况:
a.无法进入grub,屏幕左上角只出现一个光标。出现这种情况基本上MBR已经被破坏,需要进入rescue模式进行修复。
--> chroot环境,执行 "grub-install /boot所在分区" 进行修复
--> 无grub相关命令时,安装grub.rpm包进行恢复
--> /boot目录下无相关的vmlinuz和initrd.img文件时,安装kernel.rpm包进行修复
--> 无grub.conf时需要手工修复
b.grub成功加载,屏幕出现“grub>”,表示配置文件grub.conf找不到。
--> 手工修复
2.kernel & initrd.img
在加载vmlinuz和initrd时出现:kernel panic情况,基本是grub.conf设置参数出问题。
--> 检查grub.conf编写是否出现问题
--> 也有可能是分区设置或者硬盘损坏等问题,需要进入rescue模式检查
3./sbin/init
/sbin/init的配置文件是/etc/inittab
按照这个配置文件,系统会依次执行以下脚本:
---> /etc/rc.d/rc.sysinit
定义hostname,重新挂载各分区,加载各模块
---> /etc/rc.d/rc[0-6].d/目录下以S开头的脚本
启动各runlevel的服务
---> mingetty /dev/tty[1-6]
启用终端
原文链接:http://linux.cn/article-413-1.html