2

Hope someone can help out ...

So my Ubuntu laptop was a bit shoddy, occasional program crashes etc, so I decided to rebuild.

  • I ran a backup to my NAS using Deja-Dup (I backup weekly)
  • I downloaded Ubuntu 17.10 (current latest version) and reinstalled Ubuntu from USB stick.
  • I installed duplicity & python-gi (sudo apt install duplicity python-gi)
  • I tried to restore my backup (In fact I tried to restore a few but all fail with same problem)

The reinstall fails with the below error:

Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1546, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1540, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1391, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1468, in do_backup
    restore(col_stats)
  File "/usr/bin/duplicity", line 731, in restore
    restore_get_patched_rop_iter(col_stats)):
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 560, in Write_ROPaths
    for ropath in rop_iter:
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 523, in integrate_patch_iters
    for patch_seq in collated:
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 389, in yield_tuples
    setrorps(overflow, elems)
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 378, in setrorps
    elems[i] = iter_list[i].next()
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 121, in difftar2path_iter
    tarinfo_list = [tar_iter.next()]
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 339, in next
    self.set_tarfile()
  File "/usr/lib/python2.7/dist-packages/duplicity/patchdir.py", line 333, in set_tarfile
    self.current_fp = self.fileobj_iter.next()
  File "/usr/bin/duplicity", line 767, in get_fileobj_iter
    backup_set.volume_name_dict[vol_num],
KeyError: 1

What gives?

2
  • Sorry, 1 thing to add. It makes no difference whether I try to recover the backup taken today, or the backup from a week ago. It also doesn't matter whether I try to recover a single file, directory or the entire backup.
    – Marcus W
    Nov 17 '17 at 18:24
  • Update - seems this may have something to do with GnuGPG. Ignoring Deja-Dup and using duplicity via the cli to restore a backup, duplicity requests a GnuGPG key. As my backups are stored on a local NAS I backup without encryption. If I try to recover using the --no-encryption option I get the same error as before.
    – Marcus W
    Nov 19 '17 at 10:59
0

Personally I had problems with Duplicity & Python on 17.10, I find 18.04 alpha better. Probably because it's sourced from Debian Buster. Anyways I would try one of the other front ends to rsync - I've found that since deja-dup uses rsync too, that other apps can usually access the same archive. Try 'Lucky Backup' or 'GRSync'. I've used the latter to recover deja-dup encrypted files before, so I'm sure it'll work fine on a non-encrypted archive. HTH!

2
  • I may be being totally daft here but ... I have GRsync (used to copy stuff to/from my NAS. GRsync copies the duplicity archives, it doesn't uncompress/restore them in the same way that duplicity does. Right?
    – Marcus W
    Nov 21 '17 at 15:34
  • Pretty sure it does @Marcus W., they both are simply front ends to rsync a generic format. Can you work on a copy of the archives?
    – user374383
    Nov 25 '17 at 0:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.