Linux的系统恢复

1.硬盘引导阶段 mbr主引导记录的恢复

#模拟问题:dd if=/dev/zero of=/dev/vda bs=446 count=1

fdisk -l #查看启动分区*的位置

Linux的系统恢复
dd if=/dev/zero of=/dev/vda bs=446 count=1
Linux的系统恢复
恢复步骤如下:
先强制关闭
Linux的系统恢复
Linux的系统恢复
开启
Linux的系统恢复
troubleshooting
Linux的系统恢复
进入挽救模式:

Linux的系统恢复
cotinue
Linux的系统恢复

ok
Linux的系统恢复
ok
Linux的系统恢复

grub2-install 启动分区所在硬盘
grub2-install /dev/vda
Linux的系统恢复
exit两次,退出

强制关闭,调整为从硬盘启动
Linux的系统恢复

2.文件引导阶段 /boot/grub2/grub.cfg
1)引导文件丢失
/boot/grub2/grub.cfg
#模拟问题:rm -fr /boot/grub2/grub.cfg

#当系统没有被重新启动时
grub2-mkconfig > /boot/grub2/grub.cfg
Linux的系统恢复
#当系统被重新启动
Linux的系统恢复
Linux的系统恢复
grub > set root='hd0,msdos1' ##此位置是不固定的,位置指定/boot所在分区
grub > linux16 /boot/vmlinux-3.10.0-123.e17.x86_64 ro root=/dev/vda1 #根分区的设备名称
grub > initrd16 /boot/initramfs-3.10.0-123.e17.x86_64.img
grub > boot
#以上操作可以使系统正常启动,但是是临时的,所以进入系统后还是需要执行:
grub2-mkconfig > /boot/grub2/grub.cfg
Linux的系统恢复
Linux的系统恢复
2)内核文件丢失

#模拟问题:rm -fr /boot/vmlinux-3.10.0-123.e17.x86_64
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
进入挽救模式
cp /run/install/repo/Packages/kernel-3.10.0-123.e17.x86_64.rpm /mnt/sysimage/mntcd /mnt/sysimage/mnt
rpm2cpio kernel-3.10.0-123.e17.x86_64.rpm | cpio -id
cd boot
cp vmlinux-3.10.0-123.e17.x86_64 /mnt/sysimage/boot
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
3)系统初始化镜像文件丢失

#模拟问题:rm -fr /boot/initramfs-3.10.0-123.e17.x86_64.img

#当系统没有重启时
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
#当系统重启后
进入挽救模式
chroot /mnt/sysimage
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
#当/boot分区被删掉后
进入到挽救模式
chroot /mnt/sysimage
mkdir /boot
grub2-install /dev/vda
mount /dev/cdrom /mnt
rpm -ivh /mnt/Packages/kernel-3.10.0-123.e17.x86_64.rpm --force
grub2-mkconfig > /boot/grub2/grub.cfg
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复
Linux的系统恢复

转载于:https://blog.51cto.com/13363488/2048872