一、磁盘引导
问题产生原因:mbr是记录grub2引导文件的位置的磁盘分区,在0磁道1扇区446位置,当此分区数据丢失系统会因为找不到启动分区而无法启动。
问题模拟方式
dd if=/dev/zero of=/dev/vda bs=446 count=1 #清空mbr的数据
恢复方式
用光盘进入系统挽救模式
chroot /mnt/sysimage #切换环境至硬盘系统
grub2-install /dev/vda #重新安装grub2到系统硬盘上
二、grub2文件引导
问题产生原因:/boot/loader/entries/xxx.conf 丢失
问题模拟方式1
rm -fr /boot/loader/entries/xxx.conf
恢复方式
cp /usr/lib/modules/4.18.0-193.el8.x86_64/bls.conf /boot/
kernel-install add $(uname -r) /boot/vmlinuz-4.18.0-193.el8.x86_64
无法进入系统需要手动修复
grub> set root='hd0,msdos1'
grub> linux16 /vmlinuz-4.18.0-193.el8.x86_64 ro root=/dev/vda1
grub> initrd16 /initramfs-4.18.0-80.el8.x86_64.img
grub> boot
问题模拟方式2
rm -fr /boot/grub2/grub.cfg
恢复方式
rub2-mkconfig > /boot/grub2/grub.cfg
三、内核加载
问题模拟方式
rm -fr /boot/vmlinuz-$(uname -r)
恢复方式
复制系统中usr内核文件到/boot中
进入挽救模式
chroot /mnt/sysimage
cp /usr/lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r)
四、系统初始化镜像
问题模拟方式
rm -fr /boot/initramfs-xxxxx.img
恢复方式
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
五、系统运行级别错误
在开机界面按e进入编辑菜单,在内核加载选项最后加入启动级别5,进入系统重新设定运行级别
ctrl+x
systemctl set-default graphical.target
六、超级用户忘记密码
在开机界面按e进入编辑菜单,将内核加载选项中删除ro及之后的内容,将ro修改为rw rd.break。ctrl+x启动系统
chroot /sysroot
echo PASSWORD | passwd --stdin root
touch /.autorelabel