系统启动流程:

通电

||

bios(主板上的只读存储中,basicinput or output system)

作用,硬件检测,激活硬件

||

grub系统引导(grub引导分为两个阶段)

1)阶段1mbr(主引导记录)主引导记录在硬盘上的0磁道,一扇区,446个字节


2)阶段2grub文件引导阶段

||

启动内核,只读挂载/设备

检测设备

对设备驱动进行初始化

进入系统初始化阶段


||

系统初始化阶段

系统初始化阶段加载initrd镜像

开启初始化进程systemd

开始selinux

加载内核参数

初始化系统时钟,键盘,主机名称

重新读写挂载/设备

激活raid,lvm

激活配额

启动multi-user.target.wants中的所有服务

开启虚拟控制台

启动图形

一、误删MBR(关机了)

模拟误删MBR,一定严格按照此步骤来:

1、ddif=/dev/zero of=/dev/vda bs=446 count=1 ---可以清空mbr

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化

2、reboot

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化_02

3、设置个光盘启动

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_加载_03


4、进入挽救模式

1

ENTER

chroot/mnt/sysimage ---切换到真实环境

grub2-install/dev/vda ---安装引导 (未关机直接执行此命令)

exit

exit

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_误删_04

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_加载_05

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化_06


5、改回硬盘启动即可发现系统修复好了

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_加载_07


二、误删grub.cfg(记清楚自己的根分区所在位置df)

同样模拟删除grub.cfg,然后按以下步骤依次执行:

1、rm-rf /boot/grub2/grub.cfg

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化_08

2、启动系统后执行

(1)setroot='hd0,msdos1' ---boot启动分区

(2)linux16/vmlinuz-3.10.0-327.e17.x86_64 ro root=/dev/vda2---路径为自己根所在路径

(3)initrd16/initramfs-3.10.0-327.e17.x86_64.img ---系统初始化程序

(4)boot

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_加载_09

3、系统启动后

grub2-mkconfig>/boot/grub2/grub.cfg(未关机直接执行此命令重新制作该文件)

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化_10

三、误删内核文件

同样模拟删除,一定要按照下列步骤进行:

1、rm-rf /boot/vmlinuz-3.10.0-327.e17.x86_64 ---删除内核

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_误删_11

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_初始化_12

2、进入拯救模式后执行

1

ENTER

chroot/mnt/sysimage

mount/dev/sr0 /mnt/ ---挂载系统镜像

cd/mnt/Packages

rpm-ivh kernel-3.10.0-327.e17.x86_64.rpm --force

exit

exit

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_误删_13

3、最后改回硬盘启动即可

LINUX 恢复BIOS默认值 EDKII linux恢复初始状态_加载_14

误删内核文件第二种方式修改
进入挽救模式

直接 cp /run/install/repo/Packages/kernel-3....rpm /mnt/sysimage/mnt  ---复制内核安装包到真实环境某一位置
 cd /mnt/sysimage/mnt
 rpm2cpio kernel-3....rpm | cpio -id    ---解包得到二进制文件
 cd boot
 cp vmlinuz-3.... /mnt/sysimage/boot/    ---复制内核文件到boot分区下
 exit


 3、系统初始化镜像文件丢失
 rm -rf /boot/initramfs-3.10....img
 未关机情况:
 mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) $(uname -r)输出内核版本号
 关机后:
 进入挽救模式
 chroot /mnt/sysimage
 cd /boot/
 mkinitrd /boot/initramfs-$(uname -r).img $(uname -r) 
 4、误删boot分区
 进入拯救模式
 chroot /mnt/sysimage
 mkdir /boot
 grub2-install /dev/vda
 mount /dev/sr0 /mnt
 cd /mnt/Packages
 rpm -ivh kernel-3.10.0-327.e17.x86_64.rpm --force
 grub2-mkconfig >/boot/grub2/grub.cfg
 exit
 exit
 修改为硬盘启动


 5、开机启动级别更改
 模拟:systemctl set-default reboot.target   ---开机一直重启

 开机后  e   进入内核

 chroot /sysroot/
 rm -rf /etc/systemd/system/default.target      ---删除错误的链接
 ln -s /usr/lib/systemd/system/graphical.target /etc/systemd/system/default.target    ---创建正确的链接