2. 概述

下面展示的过程并不简单,并且可能对您的数据造成危害。在您需要它之前进行练习!像我一样做,在一台备用计算机上练习

本 HOWTO 最初的目标计算机是一台奔腾计算机。最初,它在一块 IDE 硬盘上安装了 Red Hat 7.1 Linux 服务器或工作站。从那时起,我使用了多台计算机,它们已升级到 Red Hat 8.0 和 Fedora Core 1、3 和 4。目标计算机没有大量数据,因为该计算机被设置为 “备用” 测试平台。也就是说,我不想用生产计算机和生产数据来测试这个过程。此外,我在开始测试之前进行了全新安装,这样如果需要恢复到已知配置,我可以随时重新安装。

Note注意
 

示例命令将在大多数情况下显示我必须键入什么来恢复目标系统。您可能需要使用类似的命令,但参数不同。您需要确保复制您的设置,而不是测试计算机的设置。

基本步骤在 W. Curtis Preston 的 Unix Backup & Recovery(O'Reilly & Associates,1999 年)中阐述,我曾在 Linux Journal 上对该书进行过好评。然而,这本书在具体的、实时的问题上有些单薄。例如,您究竟备份哪些文件?您应该保留哪些元数据,以及如何保留?本文档探讨了这些问题。

在开始本 HOWTO 中阐述的过程之前,您需要使用典型的备份工具(如 Amanda、BRU™、tar、Arkeia® 或 cpio)备份您的系统。那么,问题是如何从损坏的硬件恢复到可以运行恢复工具来恢复数据的状态。

基于 Red Hat Package Manager (RPM) 的 Linux 发行版的用户也应该将 RPM 元数据保存为正常备份的一部分。以下内容在本 HOWTO 的一个脚本中

bash# rpm -Va | sort +2 -t ' ' | uniq > /etc/rpmVa.txt

它为裸机恢复后进行比较提供了基础。

要达到这一点,必须拥有

为了到达那里,您至少需要两个阶段的备份,可能需要三个阶段。您备份什么以及在哪个阶段备份取决于您的恢复过程。例如,如果您要恢复磁带服务器,则在恢复过程中可能不需要联网。因此,仅在常规备份中备份网络。

您也将分阶段恢复。在第一阶段,我们构建分区、文件系统等,并从 ZIP 磁盘恢复最少的文件。第一阶段的目标是能够启动到一台正在运行的计算机,该计算机具有网络连接、磁带驱动器、恢复软件或第二阶段所需的任何东西。

如果需要,第二阶段包括恢复备份软件和任何相关的数据库。例如,假设您使用 Arkeia,并且您正在为您的备份服务器构建裸机恢复 ZIP 磁盘。Arkeia 在服务器的硬盘上保留着一个庞大的数据库。如果您愿意,可以从磁带中恢复数据库。相反,为什么不 tar 和 gzip 整个 arkeia 目录(位于 /usr/knox),并通过 nfs 或 ssh 将其保存到另一台计算机?正如我们在下面定义的,第一阶段不包括 X,因此如果您希望备份 X 以及您的备份程序,您将需要进行一些实验。某些恢复程序需要 X。

当然,如果您正在使用其他备份程序,您可能需要做一些侦查工作。您将必须找出它需要运行的目录和文件。如果您使用 tar、gzip、cpio、mt 或 dd 作为备份和恢复工具,它们将作为下面描述的第一阶段过程的一部分保存到我们的 ZIP 磁盘并从中恢复。

最后阶段是从磁带或其他介质进行完全恢复。完成最后阶段后,您应该能够启动到完全恢复和可操作的系统。

2.1. 局限性

本 HOWTO 仅限于制作最小备份,以便在将该备份恢复到新硬件(“裸机”)后,您可以使用常规备份来恢复完全正常工作的系统。本 HOWTO 根本不涉及您的常规备份。

即使在这个狭窄的范围内,本 HOWTO 也不是详尽无遗的。您仍然需要进行一些研究、脚本编辑和测试。

这里的脚本完全按照源硬盘上的分区数据恢复分区数据。如果您在相同的计算机或至少相同的硬盘上进行恢复,这很好,但通常情况并非如此。目前,有两种补救措施(在您阅读完 HOWTO 的其余部分后,这将更有意义)

此处显示的脚本仅处理 ext2fs、FAT12、FAT16 和 FAT32。在有热心的志愿者提供代码以在这些脚本中执行此操作之前,您将需要其他工具来备份和恢复我们尚未涵盖的文件系统。Partition Image 在这里看起来是一个有用的候选工具。