我正在设置一个家庭服务器,主要用于备份。我有大约 90GB 的个人数据必须以最可靠的方式备份,同时仍保留磁盘空间。我想拥有完整的文件历史记录,这样我就可以在任何特定日期返回任何文件。
由于数据的大小,不能选择完整的每周备份。相反,我正在寻找增量备份解决方案。但是,我知道一组增量备份中的单个损坏会使整个系列(超出某个点)无法恢复。因此,简单的增量备份不是一种选择。
我研究了许多解决这个问题的方法。首先,我将使用反向增量备份,以便最新版本的文件丢失的可能性最小(旧文件不那么重要)。其次,我想用某种冗余来保护增量和备份。Par2 奇偶校验数据似乎非常适合这项工作。简而言之,我正在寻找具有以下要求的备份解决方案:
- 反向增量(以节省磁盘空间并优先考虑最近的备份)
- 文件历史记录(一种更广泛的类别,包括反向增量)
- Par2 奇偶校验数据增量和备份数据
- 保留元数据
- 高效的带宽(节省带宽;无需为每个增量复制整个目录)。大多数增量备份解决方案都应该以这种方式工作。
这将(我相信)确保文件完整性和相对较小的备份大小。我已经查看了许多备份解决方案,但它们存在许多问题:
- Bacula - 简单的普通增量备份
- bup - 增量并实现 par2 但不是反向增量且不保留元数据
- 重复性 - 增量、压缩和加密,但不是反向增量
- dar - 增量和 par2 很容易添加,但不是反向增量和没有文件历史记录吗?
- rdiff-backup - 几乎可以满足我的需要,但它不支持 par2
到目前为止,我认为 rdiff-backup 似乎是最好的折衷方案,但它不支持 par2。我想我可以很容易地将 par2 支持添加到备份增量中,因为它们不会在每个备份中都被修改,但是其余的文件呢?我可以为备份中的所有文件递归地生成 par2 文件,但这会很慢且效率低下,而且我不得不担心备份和旧 par2 文件期间的损坏。特别是,我无法区分更改的文件和损坏的文件,我不知道如何检查此类错误或它们将如何影响备份历史记录。有谁知道更好的解决方案?有没有更好的方法来解决这个问题?
感谢您阅读我的困难以及您可以给我的任何意见。任何帮助将不胜感激。