从上至下为:
BIOS
MBR:Boot Code
执行引导程序-GRUB(操作系统)
加载内核
执行init
run level
1.BIOS(Basic Input Output System)
基本输入输出系统,一般保存在主板上的BIOS的芯片中,负责检查硬件/查找可启动设备
2.MBR
BIOS找到可启动设备后,执行其引导代码,引导代码为MBR前446字节(一共512字节),一般加载复杂的引导程序。
3.GRUB(主流引导程序)
几乎会引导现在所有的OS,Grub文件保存在/boot/grub目录下。
4.KERNEL
MBR引导代码负责找到并加载Linux内核,内核保存在/boot/vmlinux-2.6.32-279.e16.i686,额外加载内核模块打包文件/boot/initramfs-2.6.32-279.e16.i686.img
命令dmesg可查看本次启动时的内核的输出信息。也保存在/var/log/下。
5.INIT
Linux系统中运行的第一个进程。调用/etc/rc.d/rc.sysinit对 系统初始化,挂载文件系统并根据运行级别启动相应的服务。
-0 关机 -1单用户 -2不带网络的多用户 -3多用户 -4未用 -5图形化模式 -6重启动。
可以通过/etc/inittab配置文件修改默认级别,每级启动服务在/etc/rc.d/rc[0123456].d中。
runlevel可以显示当前以及上一个运行级别
命令init可以用来改变当前运行级别。
A man must be on his own!