4

我有要在本地备份的重要数据。我在一个本地硬盘驱动器上有一个数据的工作副本,然后在外部硬盘驱动器上有一个备份(然后在异地服务器上有另一个副本)。

有没有一种好方法可以让我定期(例如每周)扫描数据完整性,以确保任一驱动器上都没有损坏?

1) 磁盘实用程序扫描(例如 fsck)将检查驱动器,但不一定检查数据。2) rsync 会判断版本是否不同。3)“已完成”文件夹的哈希?

还有其他更好的方法来检查磁盘上数据的完整性以确保没有任何损坏吗?

4

1 回答 1

3

不久前,我对备份也有类似的担忧。我发现我可以轻松备份数据,但确保备份和原始文件都有效,然后在它们损坏时替换它们是一件苦差事。我开发了一个 C# 应用程序来为我做这件事,但它很麻烦而且效率不高。

最后,我最终转移到了基于 NAS4Free 的带有 ZFS 镜像的 NAS。ZFS 非常注重数据完整性。ZFS 执行块级校验和并将这些校验和与文件分开存储。如果您创建 ZFS 镜像,则数据将出现在两个(或更多)位置,您可以清理镜像。擦洗会遍历镜像中的每个块,并确保数据与校验和匹配。如果没有,它会从镜像中的其他位置抓取有效块。

这将处理您的本地数据。至于您的异地数据,如果您无法在异地创建 ZFS 存储解决方案,您可能必须在将异地备份归档并校验和后再将其发送出去,然后根据需要经常检查完整性。我将所有文件作为加密档案备份到 Amazon Glacier,并对校验和进行编目,以防我以后需要从备份中获取某些内容。

有很多可能的方法可以解决这个问题,但我发现 ZFS 支持的存储解决方案是最简单、最透明且维护量最少的解决方案。我希望这会有所帮助,或者至少可以为您指明一个有用的方向。

Nas4免费

ZFS

ZFS 镜像

于 2015-06-11T17:43:41.277 回答