All, TIA. I have several years experience with duplicity, albeit not widely
on multiple installations. I have used restore for directories and individual
files in my old scheme and I have migrated gpg and ssh keys to a new machine
and restored a home directory. Both of the following scripts are lightly edited
portions of working scripts from the old scheme.
Now I am testing a new scheme so I want to ensure restore works before I depend
on the backup. I am restoring a user's home directory to /home/restore/user as
a simulation of what I would do if I need to restore and move an entire
directory.
root@myhost:~# duplicity -V
duplicity 2.1.5
root@myhost:~# uname -a
Linux myhost 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023
x86_64 x86_64 x86_64 GNU/Linux
*#homes_restore (line not in script)*
#! /bin/sh
. /root/duplicity/.passphrase
export PASSPHRASE
/usr/bin/duplicity --path-to-restore user
\
--encrypt-key "key"
\
--log-file /var/log/duplicity/homes/restore/test-log-`date +%d-%b-%Y-%R-%Z`
\
rsync://myCreds.rsync.net <mailto:1160@usw-s001.rsync.net>:/shark/homes/
\
/home/restore/
*#homes_backup (line not in script)*
#! /bin/sh
. /root/duplicity/.passphrase
export PASSPHRASE
/usr/bin/duplicity
\
--full-if-older-than 1M
\
--encrypt-key "key"
\
--log-file /var/log/duplicity/homes/backup/log-`date +%d-%b-%Y-%R-%Z`
\
/home/
\
rsync://myCreds:/shark/homes/
*Please point me in the right direction, I am unable to make any sense of the
following when I run restore, however the directory /home/restore/user does get
created. No files are restored.*
root@host:~/duplicity# ./restore_homes &
[1] 80262
root@host:~/duplicity# No valid action found. Will imply 'restore' because url
source was given and target is a local path.
Traceback (innermost last):
File "/usr/bin/duplicity", line 62, in <module>
with_tempdir(main)
File "/usr/bin/duplicity", line 53, in with_tempdir
fn()
File "/usr/lib/python3/dist-packages/duplicity/dup_main.py", line 1561, in
main
do_backup(action)
File "/usr/lib/python3/dist-packages/duplicity/dup_main.py", line 1577, in
do_backup
col_stats = dup_collections.CollectionsStatus(config.backend,
config.archive_dir_path, action).set_values()
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
803, in set_values
self.set_matched_chain_pair(local_sig_chains + remote_sig_chains,
backup_chains)
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
816, in set_matched_chain_pair
sig_chains = sig_chains and self.get_sorted_chains(sig_chains)
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
1031, in get_sorted_chains
assert len(chain_list) == 2
AssertionError
Traceback (innermost last):
File "/usr/bin/duplicity", line 62, in <module>
with_tempdir(main)
File "/usr/bin/duplicity", line 53, in with_tempdir
fn()
File "/usr/lib/python3/dist-packages/duplicity/dup_main.py", line 1561, in
main
do_backup(action)
File "/usr/lib/python3/dist-packages/duplicity/dup_main.py", line 1577, in
do_backup
col_stats = dup_collections.CollectionsStatus(config.backend,
config.archive_dir_path, action).set_values()
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
803, in set_values
self.set_matched_chain_pair(local_sig_chains + remote_sig_chains,
backup_chains)
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
816, in set_matched_chain_pair
sig_chains = sig_chains and self.get_sorted_chains(sig_chains)
File "/usr/lib/python3/dist-packages/duplicity/dup_collections.py", line
1031, in get_sorted_chains
assert len(chain_list) == 2
AssertionError
[1]+ Exit 30 ./restore_homes
_______________________________________________
Duplicity-talk mailing list
Duplicity-talk@nongnu.org
https://lists.nongnu.org/mailman/listinfo/duplicity-talk