Deja-Dup 备份失败 - 数据无效 - 文件的 SHA 1 哈希不匹配

Deja-Dup 备份失败 - 数据无效 - 文件的 SHA 1 哈希不匹配

在我今天最近的每周备份中,Deja-Dup 给了我这张小情书:

备份失败

无效数据 - 文件的 SHA1 哈希不匹配:
duplicity-inc.20130124T230054Z.to.20130201T225108Z.vol1.difftar.gpg

计算哈希值:7726f55012e1e26cc762c9982e7c6c54ca7bb303
清单哈希值:205ecad0a91f8a11967b70d2d3fbc8e4d06231f5

我正在运行 12.10,自从安装以来一直运行每周的 deja-dup 备份。

我从阅读其他帖子中了解到这是一个已知的软件错误,当 duplicity 被中断时就会发生,但大多数其他帖子都是人们试图从这些损坏的备份中恢复。

我尝试删除并重新保存有问题的文件以重试,但收到错误消息,提示未找到该文件。

我的问题是,这对我今后的备份意味着什么?本周的备份有用吗?下周的备份有用吗?如果没有,我该如何解决此错误?

我不太关心文件的旧版本,即使将来需要它们,我也保存了一些磁盘映像,可以从中恢复。那么我是否应该删除所有内容并从头开始启动 deja-dup?

任何建议都值得感激。

答案1

我最近也遇到过这个问题。我还没有找到“理想”的解决方案。最安全的选择是丢弃有问题的备份并开始新的备份,正如您在评论中提到的那样。

类似问题的其他答案建议使用以前的备份或忽略损坏卷中的文件来恢复文件,但这显然不是最佳方案,更不用说在实践中很难实现。然而,这对失败的备份没有帮助。

尝试强制对故障卷中的文件进行完整备份是适得其反的,因为下一个增量备份非常庞大,涵盖了所有其他文件;您还不如删除失败的备份并重新开始。

我确实找到了一种方法来修补备份失败的部分。 以下是方法:

  1. 通过记录卷号来找到受影响的文件,然后根据清单文件中的卷号进行检查。
  2. 触摸受影响的文件(touch -m /name/of/file)。
  3. 进行增量备份。

增量备份将包含受影响的文件以及在此期间发生变化的任何其他文件,并且不再报告 SHA1 错误……除非通过验证(见下文)。

我直接使用 duplicity 而不是 deja-dup gui 进行了测试,因为这样我可以拥有更多的控制权,并可以执行其他操作,例如验证备份 ( duplicity verify /target/directory url:///for/backup/archive)。 它不会消除原始的 SHA1 问题,但通过提供一种方法来恢复可能损坏的备份卷中的文件,从而缓解了该问题。

同样,我认为如果您真的需要备份,就应该忘记 deja-dup,直接使用 duplicity,因为未经验证的备份毫无价值。我经历了痛苦才发现这一点,使用 deja-dup 近两年后,一次备份失败让我意识到我的备份计划实际上是一座建在沙子上的房子;当我检查我一直在使用的外部驱动器时,大约 5% 的备份文件无法读取。从那时起,我发现使用 duplicity 的 shell 脚本并不难,一旦设置好就很容易了。

相关内容