首先,计算机会加载 BLOS。这是计算机上最接近硬件的软件。所做的工作是"Power on Self Test"(加电自检),对硬件进行一次检测。如果没有问题,就可以运行软件(操作系统)了。
-
引导操作系统。这个动作是按照BLOS设定,BLOS默认会从硬盘上的第0柱面、第0磁道、第一个扇区中读取被称为MBR的东西,即主引导记录。例如CentOS、RedHat会默认使用GRUB作为其引导操作系统的程序,而GRUB本身又比较大,所以常见的方式是在MBR中写入GRUB的地址,这样系统实际会载入GRUB作为操作系统的引导程序。
一个扇区的大小是 512 字节,存放的内容是一段引导程序和分区信息,其中引导程序部分占用 446 字节,另外 64 字节是磁盘分区表DPT,最后两个字节是 MBR的结束位。
运行 GRUB。GRUB最重要的功能就是根据系统配置文件加载 Kernel 镜像,并运行内核加载后的第一个程序 /sbin/init ,这个程序会根据 /etc/inittab 来进行初始化的工作。其实这里最重要的就是根据文件中设定的值来确认系统将会运行的 runlevel , 默认的runlevel 定义在 "id:3:initdefault" 中,其中的数字 3 说明当前的运行级别定义为 3。
Linux 根据 /etc/inittab 中定义的系统初始化配置 si: : sysinit:/etc/rc.d/rc.sysinit 执行 /etc/rc.sysinit 脚本,该脚本将会设置系统变量、网络配置,并启动 swap、设定 /proc、加载用户自定义模块、加载内核设置等。
将运行 /etc/rc.local
生成终端或桌面来等待用户登录
系统基础-系统引导
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- CentOS 6启动流程CentOS 5,6的init启动过程详解grub启动过程详解启动过程错误修复 一、Cen...
- 系统启动是一项非常复杂的程序,因为内核得先检测硬件并加载适当的驱动程序后,接下来则必须要调用程序来准备好系统运行的...
- Linux系统启动流程、grub修复、模块管理及内核参数设定 runlevel, who -r , chkconf...