6. 第二阶段恢复

当计算机重启时,回到 BIOS 并验证时钟是否大致正确。

一旦您验证了时钟是正确的,退出 BIOS 并重启到硬盘。您可以简单地让计算机按正常顺序启动。您会看到很多错误消息,大多类似于 “我找不到 blah!哇哇哇!”。如果您到目前为止正确地完成了您的功课,这些错误消息无关紧要。您不需要 linuxconf 或 apache 来做您需要做的事情。

Note注意
 

作为替代方案,您可以启动到单用户模式(在 lilo 提示符下,输入 linux single),但您将必须手动配置您的网络并启动 sshd 或您需要恢复系统的任何守护进程。您如何执行这些操作非常依赖于系统。

您应该能够登录到 root 控制台(没有 X -- 没有用户,抱歉)。您现在应该能够使用网络,例如,nfs 挂载您的系统备份。

如果您为 Arkeia 做了我建议的两阶段备份,您现在可以恢复 Arkeia 的数据库和可执行文件。您应该能够运行

/etc/rc.d/init.d/arkeia start

并启动服务器。如果您在另一台安装了 X 的计算机上安装了 GUI,您现在应该能够登录到您的磁带服务器上的 Arkeia,并准备您的恢复。

Note注意
 

当您恢复时,请仔细阅读您的恢复程序的文档。例如,tar 通常不会恢复文件的某些特性,如 suid 位。文件权限由用户的 umask 设置。要完全按照您保存的方式恢复您的文件,请使用 tar 的 p 选项。同样,请确保您的恢复软件将完全按照您保存的方式恢复一切内容。

要恢复测试计算机

bash# restore.all

如果您使用 tar 进行备份和恢复,并使用了 -k(保留旧文件,不覆盖)选项,您会看到很多这样的信息

tar: usr/sbin/rpcinfo: Could not create file: File exists
tar: usr/sbin/zdump: Could not create file: File exists
tar: usr/sbin/zic: Could not create file: File exists
tar: usr/sbin/ab: Could not create file: File exists

这是正常的,因为 tar 拒绝覆盖您在第一阶段恢复期间恢复的文件。

然后重启。在关机过程中,您会看到很多错误消息,例如 “没有这样的 pid。”。这是正常过程的一部分。关机代码正在使用备份时正在运行的守护进程的 pid 文件来关闭上次启动时未启动的守护进程。当然,没有这样的 pid。

您的系统应该正常启动,错误比以前少得多;理想情况下没有错误。在基于 RPM 的系统上,您的恢复工作是否良好的酸性测试是验证所有软件包

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

预链接错误消息是正常的,您可以忽略它们。或者您可以运行命令 /etc/cron.daily/prelink 来移除它们。

某些文件,如配置文件和日志文件,在正常情况下会发生更改,您应该能够在报告中将这些文件过滤掉。您可以将输出重定向到一个文件,并将其与备份时制作的文件 (/etc/rpmVa.txt) 进行比较,从而大大加快此步骤。Emacs 用户应该查看其 diff 功能。

现在您应该已经启动并运行了。现在是测试您的应用程序的时候了,特别是那些作为守护进程运行的应用程序。应用程序越复杂,您可能需要做的测试就越多。如果您有远程用户,请禁止他们使用系统,或者使其 “只读”,以便您对其进行测试。这对于数据库尤其重要,以防止使任何损坏或数据丢失比可能已经存在的更糟。

如果您通常启动到 X,并在上面禁用了它,请在重新启用它之前测试 X。通过将 /etc/inittab 中的那一行改回

id:5:initdefault:

您现在应该准备好开始工作了 -- 以及一些阿司匹林和一张沙发。