首页 > 代码库 > 系统恢复

系统恢复

{**系统恢复**}

[1.系统启动流程]

      通电

       ||

bios(主板上的只读存储中,basic input or output system)

作用,硬件检测,激活硬件

       ||

grub系统引导(grub引导分为两个阶段)

1)阶段1: mbr (主引导记录)主引导记录在硬盘上的0磁道,一扇区,446个字节

*)dd if=/dev/zero of=/dev/vda bs446 count=1  可以清空mbr

*)进入到挽救模式,执行chroot /mnt/sysimage切换到真实/环境,并执行

   grub2-install /dev/vda

2)阶段2:grub文件引导阶段

   找到/boot分区

   读取/boot/grub2/grub,cfg

   文件丢失,grub2-mkconfig > /boot/grub2/grub.cfg

        ||

启动内核,只读挂载/设备

检测设备

对设备驱动进行初始化

进入系统初始化阶段

内核丢失,重新安装内核安装包

rpm -ivh kernel-xxxxx.rpm --force

        ||

系统初始化阶段

系统初始化阶段加载initrd镜像

开启初始化进程systemd

开始selinux

加载内核参数

初始化时钟,键盘,主机名称

重新读写挂载/设备

激活raid,lvm

激活配额

启动multi-user.target.wants中的所有服务

开启虚拟控制台

启动图形

initramfs-`uname -r`.img丢失用:

    mkinitd initramfs-`uname -r`.img `uname -r`

   mkinitd initramfs-($(uname -r)).img $(uname -r)  恢复

 

uname -r  **查看版本

 

例子:1.阶段1,446字节丢失的恢复

(修复linux7.0版本)

 技术分享

 技术分享

技术分享

技术分享

技术分享

技术分享

阶段2,grub.cfg文件丢失的恢复

(修复linux7.2版本)做法类似

1)grub.cfg文件删除或丢失时未重启,可直接恢复

[root@ftpserver ~]# cd /boot/grub2

[root@ftpserver grub2]# ls

device.map  fonts  grub.cfg  grubenv  i386-pc  locale  themes

[root@ftpserver grub2]# rm -rf grub.cfg

[root@ftpserver grub2]# ls

device.map  fonts  grubenv  i386-pc  locale  themes

[root@ftpserver grub2]# grub2-mkconfig > /boot/grub2/grub.cfg

Generating grub configuration file ...

Found linux image: /boot/vmlinuz-3.10.0-123.el7.x86_64

Found initrd image: /boot/initramfs-3.10.0-123.el7.x86_64.img

Found linux image: /boot/vmlinuz-0-rescue-946cb0e817ea4adb916183df8c4fc817

Found initrd image: /boot/initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img

done

[root@ftpserver grub2]# ls

device.map  fonts  grub.cfg  grubenv  i386-pc  locale  themes

2若丢失重启动计算机,需要进入救援模式

*先选择从网卡启动

 技术分享

*选择救援模式

 技术分享

 技术分享

 技术分享

技术分享

技术分享

两次exit退出

*然后关闭虚拟机,选择从硬盘启动即可

 


2.内核丢失恢复

[root@ftpserver ~]# cd /boot

[root@ftpserver boot]# ls

config-3.10.0-123.el7.x86_64

grub

grub2

initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img

initramfs-3.10.0-123.el7.x86_64.img

initrd-plymouth.img

symvers-3.10.0-123.el7.x86_64.gz

System.map-3.10.0-123.el7.x86_64

vmlinuz-0-rescue-946cb0e817ea4adb916183df8c4fc817

vmlinuz-3.10.0-123.el7.x86_64

[root@ftpserver boot]# rm -rf vmlinuz-3.10.0-123.el7.x86_64

reboot

*选择从网卡启动

*选择救援模式

 技术分享

 技术分享

 技术分享

技术分享

两次exit退出

*然后选择从硬盘启动即可

 

 

3.系统初始化加载initrd镜像丢失的恢复

[root@ftpserver ~]# cd /boot

[root@ftpserver boot]# ls

config-3.10.0-123.el7.x86_64

grub

grub2

initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img

initramfs-3.10.0-123.el7.x86_64.img

initrd-plymouth.img

symvers-3.10.0-123.el7.x86_64.gz

System.map-3.10.0-123.el7.x86_64

vmlinuz-0-rescue-946cb0e817ea4adb916183df8c4fc817

vmlinuz-3.10.0-123.el7.x86_64

[root@ftpserver boot]# rm -rf initramfs-3.10.0-123.el7.x86_64.img

reboot

*选择从网卡启动

*选择救援模式

 技术分享

 技术分享

技术分享

两次exit退出

*然后选择从硬盘启动即可

 

 

 

4.整个/boot分区丢失的恢复

[root@ftpserver ~]# cd /boot

[root@ftpserver boot]# ls

config-3.10.0-123.el7.x86_64

grub

grub2

initramfs-0-rescue-946cb0e817ea4adb916183df8c4fc817.img

initramfs-3.10.0-123.el7.x86_64.img

initrd-plymouth.img

symvers-3.10.0-123.el7.x86_64.gz

System.map-3.10.0-123.el7.x86_64

vmlinuz-0-rescue-946cb0e817ea4adb916183df8c4fc817

vmlinuz-3.10.0-123.el7.x86_64

[root@ftpserver boot]# rm -rf *

reboot

依次恢复上述1.2.3.如下

*选择从网卡启动

*选择救援模式

 技术分享

 技术分享

两次exit退出

*然后选择从硬盘启动即可































本文出自 “12106768” 博客,请务必保留此出处http://12116768.blog.51cto.com/12106768/1876362

系统恢复