I now am testing whether this scheme 2 will perform a restore. If you think pursuing this would provide value to you and/or the community I am willing to carry on, but my gut says preserve or delete the rsync contents and current archives, then start over with a new full at which my data is protected and I'll check daily logs for a recurrence.
hey Anonymous,
something seems wrong with you backup repo.
1. please post a file listing of the rsync folder?
2. what's the output of `duplicity collection-status`?
3. did duplicity 1.x restore that location? it would seem not.
..ede/duply.net
On 06.01.2024 21:33, duplicity--- via Duplicity-talk wrote:
> 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` \
> /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 mailing list