1.硬盘引导阶段
模拟问题:dd if=/dev/zero of=/dev/vda bs=446 count=1
chroot /mnt/sysimage
grub2-install 启动分区所在硬盘
grub2-install /dev/vda
exit
exit
2.文件引导阶段
1).引导文件丢失
模拟问题:rm -fr /boot/grub2/grub.cfg
当系统没有重新启动时
grub2-mkconfig > /boot/grub2/grub.cfg
当系统重新启动时
grub > set root='hd0,msdos1'
grub > linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 root=/dev/vda1
grub > initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img
grub > boot
grub2-mkconfig > /boot/grub2/grub.cfg
2).内核文件丢失
模拟问题:rm -fr /boot/vmlinuz-3.10.0-123.el.x86_64
解决:
进入rescue模式
chroot /mnt/sysimage
mkdir /rhel7
mount /dev/sr0 /rhel7
cd /rhel7/Packages
cp kernel-3.10.0-123.el7.x86_64.rpm /mnt
cd /mnt
rpm2cpio kernel-3.10.0-123.el7.x86_64.rpm | cpio -id
cd boot
cp vmlinuz-3.10.0-123.el7.x86_64 /boot
exit
exit
进入正常模式启动虚拟机
3).初始化镜像文件丢失
模拟问题:rm -fr /boot/initramfs-3.10.0-123.el7.x86_64.img
当系统没有重启时
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
当系统重启后
进入rescue模式
chroot /mnt/sysimage
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
exit
exit
进入正常模式启动虚拟机
4).当/boot分区被删掉
进入rescue模式
chroot /mnt/sysimage
mkdir /boot
grub2-install /dev/vda
mount /dev/sr0 /mnt
rpm -ivh /mnt/Packages/kernel-3.10.0-123.el7.x86_64.rpm --force
grub2-mkconfig > /boot/grub2/grub.cfg
3.当开机启动级别被篡改
模拟问题:systemctl set-default reboot.target
解决:
1).开机按上下键停止读秒
2).按e编辑
3).选择内核启动行
linux16 /vmlinuz-xxxxx ro xxxxx 改为:
linux16 /vmlunuz-xxxxx rw rd.break
4).ctel+x
5).chroot /sysroot
6).rm -fr /etc/systemd/system/default.target
7).ln -s /lib/systemd/system/graphical.target /etc/systemd/system/default.target
8).exit
9).exit