12.5. 多级备份

上一节概述的简单备份方法通常非常适合个人使用或小型站点。对于更繁重的使用,多级备份更合适。

简单方法有两个备份级别:完全备份和增量备份。这可以推广到任意数量的级别。完全备份将为级别 0,而不同级别的增量备份为级别 1、2、3 等。在每个增量备份级别,您备份自相同或先前级别的上次备份以来已更改的所有内容。

这样做的目的是可以廉价地获得更长的备份历史记录。在上一节的示例中,备份历史记录可以追溯到之前的完全备份。这可以通过使用更多磁带进行扩展,但每盘新磁带只能延长一周,这可能太昂贵了。更长的备份历史记录很有用,因为删除或损坏的文件通常在很长时间后才被注意到。即使是文件的版本不是很新,也比没有文件好。

使用多级备份可以更经济地扩展备份历史记录。例如,如果我们购买十盘磁带,我们可以使用磁带 1 和 2 进行每月备份(每月第一个星期五),磁带 3 到 6 进行每周备份(其他星期五;请注意,一个月可能有五个星期五,因此我们需要再购买四盘磁带),磁带 7 到 10 进行每日备份(星期一到星期四)。仅多购买四盘磁带,我们就能够将备份历史记录从两周(在所有每日磁带都用完之后)延长到两个月。诚然,我们无法恢复这两个月期间每个文件的每个版本,但我们可以恢复的内容通常已经足够好了。

图 12-1 显示了每天使用的备份级别,以及在月末可以从中恢复的备份。

图 12-1。多级备份计划示例。

备份级别还可以用于最大限度地缩短文件系统恢复时间。如果您有许多级别编号单调增长的增量备份,则如果需要重建整个文件系统,则需要恢复所有这些备份。相反,您可以使用非单调的级别编号,并减少要恢复的备份数量。

为了最大限度地减少恢复所需的磁带数量,您可以为每个增量磁带使用较小的级别。但是,这样会增加进行备份的时间(每次备份都会复制自上次完全备份以来的所有内容)。dump 手册页中建议了一种更好的方案,表 XX(efficient-backup-levels)对此进行了描述。使用以下备份级别序列:3、2、5、4、7、6、9、8、9 等。这可以保持备份和恢复时间都很短。您最多需要备份两天的工作量。恢复所需的磁带数量取决于您完全备份之间的时间间隔,但它比简单方案要少。

表 12-1。使用多级备份的高效备份方案

磁带级别备份(天)恢复磁带
10不适用1
2311, 2
3221, 3
4511, 2, 4
5421, 2, 5
6711, 2, 5, 6
7621, 2, 5, 7
8911, 2, 5, 7, 8
9821, 2, 5, 7, 9
10911, 2, 5, 7, 9, 10
11911, 2, 5, 7, 9, 10, 11
...911, 2, 5, 7, 9, 10, 11, ...

一个复杂的方案可以减少所需的人工量,但这确实意味着有更多的事情需要跟踪。您必须决定这是否值得。

dump 内置了对备份级别的支持。对于 tarcpio,必须使用 shell 脚本来实现。