《Linux系统灾难恢复技术和方法.doc》由会员分享,可在线阅读,更多相关《Linux系统灾难恢复技术和方法.doc(23页珍藏版)》请在三一办公上搜索。
1、Linux系统灾难恢复技术和方法 Linux 灾难恢复Linux 发行版本众多,现如今也得到了越来越广泛的应用,同时也面临着系统出现故障的潜在风险,本文将以发行版本 RHEL6 为例详细介绍几种 Linux 灾难恢复技术和方法,以确保 Linux 系统的安全恢复。在介绍 Linux 灾难恢复方法之前,我们先来了解下 MBR,其全称为 Master Boot Record,即硬盘的主引导记录。它由三个部分组成,主引导程序、硬盘分区表和硬盘有效标志。在总共 512 字节的主引导扇区里主引导程序(Bootloader)占 446 个字节,第二部分是硬盘分区表,占 64 个字节,硬盘有多少分区以及每一
2、分区的大小都记录在其中。第三部分是硬盘有效标志,占 2 个字节。具体如图示:图 1. MBR系统硬盘分区表破坏生产环境中的 Linux 服务器可能会因为病毒或者意外断电而引起硬盘分区表被破坏,通常恢复硬盘分区表需要之前我们先备份其分区表的信息,一般我们使用 USB 外接设备来备份主机硬盘的分区表。在主机上挂载 USB 设备后我们查看系统当前磁盘设备:现在我们在 sdb 这个设备上创建一个新的分区:在新分区 sdb1 上创建文件系统:挂载新的文件系统:通常我们通过备份硬盘的 MBR 来备份硬盘分区表:现在我们来写零硬盘分区表来实现类似分区表被破坏的结果:查询硬盘 sda 上的分区信息,发现其已不
3、包含任何分区:当主机硬盘分区表丢失了之后,再次启动后 GRUB 会因找不到配置文件而进入命令行模式:图 2. 分区表丢失接下来我们挂载 RHEL6 的安装盘,同时也接入我们之前备份的 USB 设备,然后重启主机,选择 CD-ROM 为第一引导设备,启动后选择“Rescue installed system”。图 3. 选择援救按照提示,最终我们选择一个 shell。图 4. 选择 shell我们查询系统磁盘信息,发现硬盘设备 sda 没有包含任何分区。我们来恢复它的硬盘分区表,创建一个目录并且挂载之前备份的 USB 设备,我们看到它的设备名是 /dev/sdb。通过原来备份的 sda.mbr
4、文件来恢复硬盘设备 sda 的硬盘分区表:再次查询系统磁盘信息:硬盘设备 sda 的分区表已经恢复,重启后系统便可正常引导。 系统 GRUB 损坏类似得我们可以来写零 Bootloader 来实现 GRUB 被破坏的结果:重启后系统会因找不到 GRUB 而卡在“Booting from Hard Disk ”挂载系统安装光盘然后选择进入 Rescue 模式,然后恢复 GRUB:图 5. 恢复 GRUB重启主机后,系统可正常引导。系统核文件丢失系统丢失核 kernel 文件,再次启动后会提示找不到文件。图 6. 核丢失挂载系统安装盘进入援救模式,检查 /boot 目录下发现没有 kernel 文
5、件。从挂载的系统安装盘强制重新安装核:在 /boot 目录下已经生成新的 kernel 文件 vmlinuz-2.6.32-71.el6.x86_64重启主机后,系统可正常引导。系统镜像文件丢失系统丢失镜像文件,主机启动后黑屏。图 7. 镜像丢失挂载系统安装盘进入援救模式 , 检查 /boot 目录下发现没有镜像文件。重新生成镜像文件 initramfs-2.6.32-71.el6.x86_64.img。重启主机后 , 系统可正常引导。 系统 /boot 分区损坏一般来说系统 /boot 分区损坏,我们会先尝试修复文件系统。如果文件系统损坏不能修复,那么我们可以参照前述的方法来依次新建 /bo
6、ot 分区,重新安装核和镜像,然后安装 GURB 再手工编辑引导菜单,以最终来恢复系统可正常引导。通常我们需要按照如下的步骤来恢复。创建分区碰到比较严重的情况就是 /boot 分区已经完全损坏,启动时会提示找不到引导设备。图 8. 引导分区损坏挂载安装盘后进入援救模式,查看分区情况,发现分区 /dev/sda1 不存在。新建一个分区并且设置它为启动分区。重启主机以更新分区表,然后进入援救模式,并在我们新创建的分区上创建文件系统。通过前述的方法我们安装核和镜像文件。安装 GRUB我们安装 GRUB 到硬盘设备 sda 上。编辑引导菜单由于我们创建了新的分区,其对应的 UUID 会发生变化,可以通过命令 blkid 来查询分区的 UUID。上述的 sda3 为根分区,编辑 /boot/grub/grub.conf 文件更新其对应的 UUID,其容如下。更新 /etc/fstab类似的我们也需要更新 /etc/fstab 里 /boot 分区对应的新 UUID,其容如下。现在我们的恢复步骤已经完成,重启主机后 GRUB 中可见我们配置的系统列表。图 9. GRUB 菜单至此 /boot 分区已恢复,系统可正常引导启动。图 10. 系统启动总结本文阐述了常见的 Linux 灾难恢复技术和方法,及其出现严重灾难时应注意的恢复顺序,以确保 Linux 系统在出现灾难时得以安全恢复。