Linux引导过程


:Mr.zhou  阅读: 891 次

Linux Boot Process

 

BIOS 为 基本输入输出系统

执行系统的完整性检查

搜索、加载、执行引导装载程序

更改引导顺序

将引导程序加载到内存并把控制权交给引导程序

 

MBR 为 主引导记录。

它位于启动盘的第一个扇区。通常为/ dev/ hda,或/ dev/ sda。

MBR小于512字节。由3部分组成:

1),位于最前面的446字节的主引导信息;

2)接下来64字节的分区表信息;

3)最后2字节的mbr校验信息;

包含GRUB的信息。

GRUB 为 Grand Unified Bootloader。

 

如果系统中安装了多个内核,可以选择运行哪个系统内核。

若没有手动选择要启动的内核,则 grub 启动在配置文件中(/boot/grub/grub.conf)设定的默认系统内核。

 

Kernel

根据grub.conf配置文件中的“root= ”挂载根文件系统。

内核执行 /sbin/init 程序,init程序是内核执行的第一个程序,进程号为 1 ,在系统启动后可以通过“ps -ef | grep init”命令查看。

initrd 为 Initial RAM Disk

在真正的根文件系统挂载之前 initrd 为内核的临时根文件系统。它还包含必要的驱动程序,使内核可以正常的使用硬件设备。

init

init 根据 /etc/inittab 配置文件中的设置,进入默认的运行级别,并加载相应级别的启动程序。

一般情况下,默认级别为 3 或 5

Runlevel

当系统启动时,会运行该级别定义的启动程序。

各级别运行程序的目录

Run level 0 – /etc/rc.d/rc0.d/
Run level 1 – /etc/rc.d/rc1.d/
Run level 2 – /etc/rc.d/rc2.d/
Run level 3 – /etc/rc.d/rc3.d/
Run level 4 – /etc/rc.d/rc4.d/
Run level 5 – /etc/rc.d/rc5.d/
Run level 6 – /etc/rc.d/rc6.d/

在这些目录中 S 开头的为开启系统时要启动的程序,K 开头的为关闭程序时要关闭的程序。字母后面的数字为开启/关闭程序的顺序。

 

Linux  运行级别介绍
ID Name Description
0 Halt Shuts down the system.
1 Single-user Mode Mode for administrative tasks.
2 Multi-user Mode Does not configure network interfaces and does not export networks services.
3 Multi-user Mode with Networking Starts the system normally.
4 Not used/User-definable For special purposes.
5 Start the system normally with appropriate display manager. ( with GUI ) Same as runlevel 3 .
6 Reboot Reboots the system.

MBR 结构图

mrb


转载请注明原文链接:http://www.z-dig.com/linux-boot-process.html



正文部分到此结束