电脑技术学习

UNIX系统备份关键的信息

dn001

使用 rsync 存储备份数据

rsync 工具可以在不同的位置或计算机之间复制整个目录结构,它通过使用一种特殊的算法,可以实现仅传输更改过的文件。这使得它成为一种非常高效的复制文件的方法,特别是在不同的计算机之间,这也意味着,备份过程将很快完成。

有两种使用 rsync 的方法,要么作为一种简单的同步方法,使用这种方法,您可以将所有重要的文件复制到新的驱动器或系统,要么作为一种备份方法,按日期复制整个目录树,这与在前面的示例中创建 tar 备份文件的方法相同。

前面这种方法既快速又简单,但是您不能回到出现故障之前某个特定的日期。而后面这种方法提供了基于日期的选择,但是它需要更多的管理(尤其是因为您需要删除不再需要的旧版本的文件)以及相当数量的存储空间,因为没有对这些文件进行压缩。然而,您获得了更简单和更直接的访问方式。

如何对 rsync 进行设置,这超出了本文的范围,但在完成了相应的配置工作之后,进行信息的传输和同步就非常简单了。清单 7 显示了使用 rsync 进行文件同步的脚本。


清单 7. 使用 rsync 对文件进行同步的脚本

#!/bin/bashDESTBASE=admin@atuin:/mnt/backupprepareHOST=`hostname`cd /export/data/svnrsync --stats --rsh=/usr/bin/ssh --delete --recursive --times -og --links . $DESTBASE/$HOST/svncd /export/home/websrsync --stats --rsh=/usr/bin/ssh --delete --recursive --times -og --links . $DESTBASE/$HOST/webscd /var/bindrsync --stats --rsh=/usr/bin/ssh --delete --recursive --times -og --links . $DESTBASE/$HOST/bindcd /etcrsync --stats --rsh=/usr/bin/ssh --delete --recursive --times -og --links . $DESTBASE/$HOST/etc      

;指定的 rsync 命令选项如下所示:

  • --stats 显示同步的统计信息。
  • --rsh 告诉 rsync 使用安全 Shell (SSH) 复制文件(出于安全考虑)。
  • --delete 删除目标中那些在本地目录中不存在的文件。
  • --recursive 确保对整个目录进行检查。
  • --times 保留文件的创建和修改时间。
  • -og 保留所有权和组信息。
  • --links 将链接复制为链接,而不是它们所链接的文件。

DESTBASE 变量指定了基本位置(在本示例中为远程主机上的文件系统),而 HOST 变量则保存了主机名信息,以便您能够对多台主机使用相同的脚本进行备份。

备份整理的数据

在前面的部分中,您已经使用了 tar 和 rsync 在单独的文件夹中创建相应的备份。您可以使用这种经过整理的信息作为主备份,尤其是当文件位于另一台计算机时。然而理想的情况下,您还应该将这些文件备份到另一个位置。

使用上面介绍的这些脚本,无论是 tar 或 rsync,都可以将多台主机的多个目录中的信息整理到单个位置。基于这一点,您可以使用自己喜欢的方法进一步地对这些信息进行备份,包括将其复制到另一台计算机或设备,或复制到磁带或磁盘。

保存长期的记录

大多数备份解决方案,尽管对其进行了良好的管理,但通常依赖于交替和循环使用用于存储数据的介质或目标。然而,您可能需要长期保存相关信息的某些类型的关键数据,甚至可能需要能够记录这些数据的变更和修改信息,并作为备份过程的一部分。

实际上,记录这些信息的时间间隔仅受到可用磁盘空间或存储空间的限制。使用基于日期的方法,特别是在使用 tar 或 cpio 时,您可以长期保存相关记录,而不会对存储空间造成很大的影响。通过使用常规的完整备份(换句话说,包括所有的文件)和增量 (diff) 备份(其中仅备份变更的内容),您可以进一步延长其保留时间。

总结

备份关键文件涉及到确定相关文件,并找到一种合适的方法存储和备份这些信息。文件可能存储在许多不同的位置,而您应该多加小心,以确保包含重要的、但经常被遗忘的内容,比如内核驱动程序、库和相关配置。

然后使用合适的方法,就可以对这些信息进行有效的备份。与用户数据不同,通常需要优先对关键文件进行恢复,以便在继续进行其他的还原操作之前,使计算机获得正确的配置。通过使用 tar 或 rsync,做好对该信息进行访问的准备,这样通常将更加有效。

标签: