Comment 4 for bug 126417

Revision history for this message
Buttay (cyril-buttay) wrote :

I also have a problem running duplicity via backupninja:

on its own, duplicity works:
$ export PASSPHRASE=my_passphrase
$ duplicity --full --no-print-statistics --encrypt-key XXXXXXX --sign-key XXXXXXXX --remove-older-than 60D --exclude '/home/*/.gnupg' --exclude '/home/*/.gnupg' --exclude '/home/*/.local/share/Trash' --exclude '/home/*/.Trash' --exclude '/home/*/.thumbnails' --exclude '/home/*/.beagle' --exclude '/home/*/.aMule' --exclude '/home/*/gtk-gnutella-downloads' --exclude '/home/cyril/backups' --include '/var/spool/cron/crontabs' --include '/var/backups' --include '/etc' --include '/root' --include '/home' --include '/usr/local/*bin' --include '/var/lib/dpkg/status*' --exclude '**' / scp://login@host//directory

(the duplicity command is a copy of the one generated by the backupninja script)

however, running backupninja fails (line breaks added for readability):

backupninja --debug --run /etc/backup.d/90.dup

Debug: check_perms /etc/backup.d
Debug: perms: drwxrwx---
Debug: gperm: rwx
Debug: wperm: ---
Debug: check_perms /etc/backup.d/90.dup
Debug: perms: -rw-------
Debug: gperm: ---
Debug: wperm: ---
Info: >>>> starting action /etc/backup.d/90.dup (because of --now)
Debug: yes
Debug: ssh -o PasswordAuthentication=no host -l login 'echo -n 1'
Debug: Connected to host as login successfully
Debug: Data will be encrypted with the GnuPG key XXXXXXXX.
Debug: Data will be signed will the GnuPG key XXXXXXXX.

duplicity --full --no-print-statistics --encrypt-key XXXXXXX --sign-key XXXXXXXX --remove-older-than 60D --exclude '/home/*/.gnupg' --exclude '/home/*/.gnupg' --exclude '/home/*/.local/share/Trash' --exclude '/home/*/.Trash' --exclude '/home/*/.thumbnails' --exclude '/home/*/.beagle' --exclude '/home/*/.aMule' --exclude '/home/*/gtk-gnutella-downloads' --exclude '/home/cyril/backups' --include '/var/spool/cron/crontabs' --include '/var/backups' --include '/etc' --include '/root' --include '/home' --include '/usr/local/*bin' --include '/var/lib/dpkg/status*' --exclude '**' / scp://login@host//directory

Debug: Warning, found incomplete backup sets, probably left from aborted session No signatures found, switching to full backup. Traceback (most recent call last):
File "/usr/bin/duplicity", line 394, in <module> if __name__ == "__main__": main()
File "/usr/bin/duplicity", line 387, in main if not sig_chain: full_backup(col_stats)
File "/usr/bin/duplicity", line 146, in full_backup bytes_written = write_multivol("full", tarblock_iter, globals.backend)
File "/usr/bin/duplicity", line 82, in write_multivol globals.gpg_profile,globals.volsize)
File "/usr/lib/python2.5/site-packages/duplicity/gpg.py", line 198, in GPGWriteFile try: data = block_iter.next(bytes_to_go).data
File "/usr/lib/python2.5/site-packages/duplicity/diffdir.py", line 407, in next result = self.process(self.input_iter.next(), size)
File "/usr/lib/python2.5/site-packages/duplicity/diffdir.py", line 277, in get_delta_iter_w_sig (new_path, sig_path, sigTarFile))
File "/usr/lib/python2.5/site-packages/duplicity/robust.py", line 31, in check_common_error try: return function(*args)
File "/usr/lib/python2.5/site-packages/duplicity/diffdir.py", line 309, in get_delta_path_w_sig if not new_path.isreg(): sigTarFile.addfile(ti) File "/usr/lib/python2.5/site-packages/duplicity/tarfile.py", line 762, in addfile self.fileobj.write(full_headers)
File "/usr/lib/python2.5/site-packages/duplicity/dup_temp.py", line 120, in write return self.fileobj.write(buf)
File "/usr/lib/python2.5/site-packages/duplicity/gpg.py", line 117, in write def write(self, buf): return self.gpg_input.write(buf) IOError: [Errno 32] Broken pipe close failed: [Errno 32] Broken pipe close failed: [Errno 32] Broken pipe

Fatal: Duplicity failed.
Fatal: <<<< finished action /etc/backup.d/90.dup: FAILED
Debug: send report to cyril@localhost
df: `': Aucun fichier ou répertoire de ce type
Info: FINISHED: 1 actions run. 1 fatal. 0 error. 0 warning.

also note that to get this far, I had to modify the duplicity script located in /usr/share/backupninja, to remove --ssh-command 'ssh $sshoptions' from lines 86 and 88, as this generated an error message because this option is not recognized (nor is it mentioned in the duplicity documentation)