引导与故障修复

182 阅读2分钟

引导过程

开机自检(bios)→MBR引导→GRUB菜单→加载内核(kernel)→init进程初始化

1.开机自检

开机自检(bios) 检测出第一个能够引导系统的设备,比如硬盘或者光驱

2.MBR分区引导

当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中 MBR(Master Boot Record, 主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据 MBR 记录中的引导信息调用启动菜单(如 GRUB)。

总结:运行放在MBR扇区里的启动 GRUB引导程序

3.GRUB菜单

GRUB菜单GRUB引导程序通过读取GRUB配置文件/boot/grub2/grub.cfg,来获取内核和镜像文件系统的设置和路径位置

4.加载内核

Linux 内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间, 负责资源分配与调度。在 CentOS 系统中,默认的内核文件位于“/boot/vmlinuz-3.10.0-514.el7.x86_64”。

总结:把内核和镜像文件系统加载到内存中 可以使用

5.init进程初始化

为了完成进一步的系统引导过程,Linux内核首先将系统中的"/sbin/init"程序加载到内存中运行(运行中的程序称为进程),init进程负责完成整个系统的初始化,最后等待用户进行登录。

总结:加载硬件驱动程序,内核把init进程加载到内存中运行

image.png

修复MBR 扇区故障实验

1备份mbr引导扇区到其他磁盘 dd if=/dev/sda of=/mnt/mbr.bak count=1 bs=512

image.png 2模拟破坏mbr引导扇区 dd if=/dev/zero of=/dev/sda count=1 bs=512 image.png

3重启后引导镜像急救模式

image.png

image.png

选择急救操作系统 image.png

选1 image.png

4挂载之前备份的硬盘,将之前备份的文件写入/dev/sda mount /dev/sdb1 /mnt/

image.png

5重启之后完成

image.png

修复 grub.cfg 文件丢失导致的故障

image.png

方法 引导界面进入急救模式,重建grub菜单配置文件 进入光驱里的系统

image.png

切换到自己系统的根目录下

image.png

重新建立sda 分区 grub2-install /dev/sda

重新构建grub菜单配置文件grub2-mkconfig -o /boot/grub2/grub.cfg 退出环境重启

image.png

完成