# 1.磁盘引导 #
mbr=主引导记录=0磁道1扇区446
作用:
记录grub2引导文件的位置当mbr数据丢失系统会因为找不到启动分区而停止启动
问题模拟方式:
系统磁盘/dev/sda
dd if=/dev/zero of=/dev/vda bs=446 count=1 ##清空系统/dev/sda上的mbr数据
恢复方式:
(1)另外添加一块硬盘,在该硬盘上存放系统镜像(制作启动盘,也可以用u盘制作)
增加硬盘之前,切记先将该系统关闭
(2) 调整系统启动位置,使系统从新添加的硬盘启动。
(3)开机,进入挽救模式
用光盘进入系统挽救模式
chroot /mnt/sysimage
grub2-install /dev/vda ##重新安装grub2到系统硬盘上
exit
exit
# 2.grub2文件引导 #
rhel8
/boot/grub2/grub.cfg
/boot/loader/entries/xxxxxxxxx.conf
指定/boot位置
指定系统启动时加载文件成名当上面两个文件有任意一个丢失时,系统都将无法正常启动
(1)当两个文件丢失,但系统还未关机时
模拟问题1:
rhel8:
rm -fr /boot/loader/entries/xxxxxxxxx.conf
修复:
rhel8:
cp /usr/lib/modules/4.18.0-193.el8.x86_64/bls.conf /boot/
kerne-install add 内核版本号 内核镜像
kernel-install add $(uname -r) /boot/vmlinuz-4.18.0-193.el8.x86_64
模拟问题2:
rm -fr /boot/grub2/grub.cfg
修复:
grub2-mkconfig > /boot/grub2/grub.cfg
(2)当两个文件中的任意一个有异常,但系统已经关机
手动引导:
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
# 3.内核加载 #
加载内核作用: /boot/vmlinuz-$(uname -r)
系统初始化硬件设备
只读挂在/设备
(1)当删除内核后没有关机时
问题出现:
rm -fr /boot/vmlinuz-$(uname -r)
恢复:
复制系统中usr下的内核文件到/boot中即可
(2)删除后重启
进入到挽救模式
chroot /mnt/sysimage
cp /usr/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r)
exit
exit
# 4.系统初始化镜像 #
/boot/initramfs-4.18.0-80.el8.x86_64.img
加载系统时钟
加载selinux
加载系统主机信息
加载/etc/fstab文件中磁盘挂在策略
加载磁盘配额
初始化系统程序开启开机启动服务
开启虚拟控制台
开启图形
问题出现:
rm -fr /boot/initramfs-xxxxx.img
恢复:
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
(1)当删除后没有关机时
(2)删除后重启
# 5.系统启动级别 #
0 关机
1 单用户
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启
问题出现:
systemctl set-default reboot.target恢复:
在开机选择界面按<e>进入到引导文件编辑模式
在内核加载选项最后加入启动级别5
ctrl+x
systemctl set-default graphical.target
# 6.超级用户密码忘记 #
恢复:
1.在开机选择界面按<e>进入到引导文件编辑模式
2.在内核加载选项最后删除到ro选项
3.更改ro---->rw
4.加入rd.break参数终止系统启动进入单用户模式
5.ctrl+x启动
6.chroot /sysroot
7.echo lee| passwd --stdin root
8.touch /.autorelabel ##当/.autorelabel文件存在selinux会重新初始化cp kernelcore-4.18.0-80.el8.x86_64.rpm /mnt/
exit
exit