Deja-dup:无效数据 - 文件的 SHA1 哈希不匹配

Deja-dup:无效数据 - 文件的 SHA1 哈希不匹配

我已经使用 deja-dup 实用程序备份了我的数据并全新安装了 12.04。
但是当我尝试恢复备份时,出现了以下错误:

invalid data - SHA1 hash mismatch for file:
 duplicity-full.20120508T105537Z.vol12.difftar.gz
 Calculated hash: 8ae69af39a566823309fae86142ae3a2af16358d
 Manifest hash: 6a332f406b0842f229e2122921c0e4c97c4f76bd

我尝试删除缓存并使用不同的选项执行手动恢复,但每次在相同的文件上都失败。我注意到这些文件比其他文件小。它们大约 30Mb,而其他所有文件都是 51Mb。

  • 备份的总大小约为 35Gb。
  • 备份存储在具有 FAT 文件系统的外部 USB 驱动器上。
  • 未使用加密

是否存在一些解决方法?
是否可以从恢复中排除特定文件?

有什么想法吗?...如你所知,我真的需要这个数据!...

谢谢

更新:@Nirmik、@Eliah Kagan:

我也尝试过从本地目录和 UbuntuOne 进行恢复。同样的问题。我可以恢复一些文件,但无法成功恢复完整备份。我尝试使用一些小目录的测试备份执行这些操作……问题仍然存在。

答案1

似乎你遇到了一个已知的错误:deja-dup错误 826389错误 487720

引用第二个链接,似乎您的数据损坏不是由硬件造成的,而是完全与软件有关的:

如果在 duplicity 中断(例如,关闭机器或其他原因)之前卷文件未完全写入后端,则可能会发生这种情况。当 duplicity 下次恢复备份时,它将从下一个卷开始。半完整的卷文件将停留在后端,并在稍后恢复时导致此错误。

您可以通过从旧备份集还原或还原损坏卷中不存在的单个文件来手动恢复。

第一个链接中的另外两个人说道:

有两种方法可以解决这个问题。您可以尝试从损坏之前的备份中恢复。因此,请尝试从较旧的备份中恢复。

您还可以尝试通过恢复备份集中除损坏卷中的文件之外的所有文件来避开特定卷。

和:

非常感谢。我所做的是 [duplicity --file-to-restore ....],然后我恢复了重要文件。

我从未使用过 deja-dup 或 duplicity,但似乎这里最合理的解决方案是使用 deja-dup 自动恢复完整的卷,然后使用卷内的完整文件逐个恢复它们duplicity --file-to-restore ...

希望这可以帮助。

答案2

尝试将数据传输到主目录中的文件夹,例如 /Home/username/backup

然后从 Deja-dup 设置更改备份目录并尝试恢复...

更改设置-

系统设置>>备份>>存储>>选择“本地文件夹”>>选择路径,例如“/home/username/backup”

媒体的外部性可能会引发问题……

答案3

我遇到了同样的问题,我可以直接使用 duplicity 恢复数据的子集,操作方法如下。

检查备份文件夹中的清单文件中备份文件的路径,并可以逐个文件夹进行恢复,以避免引发错误的文件/文件夹。

命令如下:

duplicity -t 1D --file-to-restore <folder or file without / at the begining> file://<path to the backup with / at the begining> </path/to/restore> --no-encryption -v8

您可以在命令末尾加上“--ignore-errors”以尝试恢复所有忽略的错误,但不建议这样做。

相关内容