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

drk*_*ndy 3 backup deja-dup hash

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

备份失败

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

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

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

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

我已尝试删除并重新整理相关文件以重试,但收到错误消息,提示未找到该文件。

我的问题是,这对我以后的备份意味着什么?本周的备份工作了吗?下周会吗?如果没有,我该如何解决这个错误?

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

任何建议表示赞赏。

Bob*_*ble 5

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

类似问题的其他答案提出了通过使用以前的备份或忽略损坏卷中的文件来恢复文件的解决方法,但这显然不是最佳选择,更不用说在实践中实现了。但是,这对失败的备份没有帮助。

试图强制对失败卷中的文件进行完整备份会适得其反,因为下一次增量备份是巨大的,覆盖所有其他文件;您不妨删除失败的备份并重新开始。

我确实找到了一种方法来实现备份失败部分的补丁。这是食谱:

  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% 的备份文件无法读取。从那时起,我发现使用具有双重性的 shell 脚本并没有那么难,一旦设置好就非常容易。