十五.Linux系统引导过程及引导修复

一.通电 

二.bios初始化

对硬件检测
初始化硬件时钟

三.磁盘引导

mbr=主引导记录=0磁道1扇区446
作用:记录grub2引导文件的位置

当mbr数据丢失系统会因为找不到启动分区而停止启动

(一)问题模拟方式
系统磁盘/dev/sda

dd if=/dev/zero of=/dev/sda bs=446 count=1        清空系统/dev/sda上的mbr数据

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

(二)恢复方式:
用光盘进入系统挽救模式
chroot /mnt/sysimage
grub2-install     /dev/xxxxxx    

            重新安装grub2到系统硬盘上

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

已成功恢复

十五.Linux系统引导过程及引导修复

四.grub2文件引导

rhel8
/boot/grub2/grub.cfg
/boot/loader/entries/xxxxxxxxx.conf

指定/boot位置
指定系统启动时加载文件成名

(一)模拟问题:
rhel8:
rm -fr /boot/loader/entries/xxxxxxxxx.conf

十五.Linux系统引导过程及引导修复

(二)修复:

1.手动引导(一次性的)

set root='hd0,msdos1'
linux16 /vmlinuz-3.10.0-957.el7.x86_64 ro root=/dev/nvme0n1p2
initrd16 /initramfs-4.18.0-80.el8.x86_64.img
boot

十五.Linux系统引导过程及引导修复

2.引导完成,修复/boot/loader/entries下的文件

rhel8:
kerne-install   add    内核版本号    内核镜像
kernel-install add  $(uname -r) /lib/modules/$(uname -r)/vmlinuz

五.内核加载 

加载内核作用:
/boot/vmlinuz-$(uname -r)
系统初始化硬件设备,只读挂载设备

(一)问题出现:
rm -fr /boot/vmlinuz-$(uname -r)

十五.Linux系统引导过程及引导修复

(二)恢复:

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复
进入到挽救模式
chroot /mnt/sysimage

拆解内核文安装包并复制内核压缩镜像到/boot

mount /dev/cdrom /media

cd /media/BaseOS/Packages
cp kernel-core-$(uname -r).rpm  /mnt/
cd /mnt
rpm2cpio kernel-core-$(uname -r).rpm | cpio -id

cp /mnt/lib/modules/$(uname -r)/vmlinuz  /boot/vmlinuz-$(uname -r)

exit
exit

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复
 六.系统初始化镜像

/boot/initramfs-4.18.0-80.el8.x86_64.img
加载系统时钟,加载selinux,加载系统主机信息,加载/etc/fstab文件中磁盘挂在策略,加载磁盘配额,初始化系统程序开启开机启动服务,开启虚拟控制台,开启图形。
(一)问题出现:
rm -fr /boot/initramfs-xxxxx.img

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

(二)恢复:
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复
七.系统启动级别

0    关机
1    单用户
2    无图形网络模式
3    无图形网络模式
4    无图形网络模式
5    有图形网络模式
6    重启

(一)问题出现:
systemctl set-default reboot.target    开机无限重启

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复

十五.Linux系统引导过程及引导修复
(二)恢复:
在开机选择界面按<e>进入到引导文件编辑模式

十五.Linux系统引导过程及引导修复
在内核加载选项最后加入启动级别5
ctrl+x

十五.Linux系统引导过程及引导修复

systemctl set-default graphical.target

十五.Linux系统引导过程及引导修复

开机自启项目,将服务链接到开机程序中去

十五.Linux系统引导过程及引导修复

八.超级用户密码忘记

十五.Linux系统引导过程及引导修复

恢复:
1.在开机选择界面按<e>进入到引导文件编辑模式
2.在内核加载选项最后删除到ro选项
3.更改ro---->rw
4.加入rd.break参数终止系统启动进入单用户模式
5.ctrl+x启动

十五.Linux系统引导过程及引导修复
6.chroot /sysroot
7.echo lee| passwd --stdin root
8.touch /.autorelabel        ##当/.autorelabel文件存在selinux会重新初始化

exit
exit

十五.Linux系统引导过程及引导修复


九.实验:

rm -fr /boot/*
恢复步骤
grub2-install  /dev/sda
grub2-mkconfig > /boot/grub2/grub.cfg
rpm -ivh  kernel-core-xxxx.rpm

十五.Linux系统引导过程及引导修复