Deja Dup恢复备份失败(未知错误)求助
Deja Dup恢复备份失败(未知错误)求助
兄弟,我之前也踩过Deja Dup恢复的坑,结合你给出的错误日志和备份文件情况,给你几个能快速尝试的解决办法:
直接用Duplicity命令行恢复(最推荐)
Deja Dup本质是Duplicity的图形界面套壳,GUI出问题的时候,命令行往往更稳定。- 先确保系统装了Duplicity:
sudo apt install duplicity - 执行恢复命令,记得替换成你实际的路径:
# 假设外接SSD挂载在/mnt/ssd-backup,备份文件在该路径下的backup目录,要恢复到/home/your-name/restore duplicity restore file:///mnt/ssd-backup/backup /home/your-name/restore
如果你的备份是加密的,执行命令后会提示你输入加密密码,正常输入就行。
- 先确保系统装了Duplicity:
修复备份集的时间戳问题(针对日志里的时间解析错误)
日志里的g_date_time_new_from_iso8601: assertion 'text != NULL' failed错误,大概率是某个备份卷的文件名时间戳格式有问题,导致系统解析失败。- 先列出所有备份卷,检查有没有格式异常的文件:
ls -la /mnt/ssd-backup/backup | grep duplicity- - 对比其他正常文件(比如你给出的
duplicity-full.20240403T095423Z.vol1.difftar.gz),把格式不对的文件名手动修正成duplicity-xxx.YYYYMMDDTHHMMSSZ.volN.difftar.gz的标准格式 - 也可以尝试让Duplicity自动修复备份集:
duplicity collection-status file:///mnt/ssd-backup/backup,这个命令会检查备份的完整性,能自动修复一些小的索引问题。
- 先列出所有备份卷,检查有没有格式异常的文件:
手动批量解压备份卷(保底方案)
如果上面的方法都不行,这些.difftar.gz其实是标准的tar压缩包,你可以直接解压救回文件:- 单个文件解压命令:
tar xzf /mnt/ssd-backup/backup/duplicity-full.20240403T095423Z.vol1.difftar.gz -C /home/your-name/temp-restore - 批量解压的话,可以写个简单的shell脚本:
cd /mnt/ssd-backup/backup mkdir -p /home/your-name/batch-restore for file in duplicity-*.difftar.gz; do tar xzf "$file" -C /home/your-name/batch-restore done
要是备份是加密的,得先解密再解压:
duplicity decrypt file:///mnt/ssd-backup/backup/duplicity-full.20240403T095423Z.vol1.difftar.gz /tmp/decrypted.gz
然后再用tar命令解压/tmp/decrypted.gz就行。- 单个文件解压命令:
备注:内容来源于stack exchange,提问作者Ivan Skoda
相关产品推荐
相关产品推荐

