Backup-Restoration
重複“CollectionsError:未找到備份鏈”
我正在使用 duplicity 0.7.06 進行備份,使用 0.7.17 來恢復 duplicity 備份。但是在嘗試從中還原目錄時出現錯誤“未找到備份鏈”。
我不確定那個錯誤意味著什麼。
備份是這樣進行的(並且沒有錯誤):
duplicity --no-encryption --full-if-older-than 10D /path/to/dir s3+http://my-s3-bucket/duplicity/dir
如果我列出它們,我可以看到重複檔案:
~$ s3cmd ls s3://my-s3-bucket/duplicity/dir/ 2019-05-12 15:51 19505 s3://my-s3-bucket/duplicity/dir/duplicity-full-signatures.20190512T155147Z.sigtar.gz 2019-05-12 15:51 724 s3://my-s3-bucket/duplicity/dir/duplicity-full.20190512T155147Z.manifest 2019-05-12 15:51 728333 s3://my-s3-bucket/duplicity/dir/duplicity-full.20190512T155147Z.vol1.difftar.gz
我正在嘗試像這樣恢復它:
duplicity --file-to-restore path/to/dir s3+http://my-s3-bucket/duplicity /home/restored/dir
我得到的錯誤是:
duplicity 0.7.17 (February 26, 2018) Args: /usr/bin/duplicity --file-to-restore path/to/dir s3+http://my-s3-bucket/duplicity /home/restored/dir Linux machinename 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 /usr/bin/python2 2.7.15rc1 (default, Nov 12 2018, 14:31:15) [GCC 7.3.0] ================================================================================ Using temporary directory /tmp/duplicity-Zu29z3-tempdir Temp has 30699757568 available, backup will use approx 272629760. Local and Remote metadata are synchronized, no sync needed. Last full backup date: none Traceback (innermost last): File "/usr/bin/duplicity", line 1555, in <module> with_tempdir(main) File "/usr/bin/duplicity", line 1541, in with_tempdir fn() File "/usr/bin/duplicity", line 1393, in main do_backup(action) File "/usr/bin/duplicity", line 1472, in do_backup restore(col_stats) File "/usr/bin/duplicity", line 728, in restore restore_get_patched_rop_iter(col_stats)): File "/usr/bin/duplicity", line 750, in restore_get_patched_rop_iter backup_chain = col_stats.get_backup_chain_at_time(time) File "/usr/lib/python2.7/dist-packages/duplicity/collections.py", line 974, in get_backup_chain_at_time raise CollectionsError("No backup chains found") CollectionsError: No backup chains found
根據 ede 的回答中的線索,我修改了我的恢復行,將我想要恢復的目錄的名稱添加到 s3:// url 的末尾:
s3+ http://my-s3-bucket/duplicity/dir /home/restored
然後它找到了備份鏈,但說它在其中找不到“dir”。
然後我嘗試刪除
--file-to-restore
開關以使命令如下:duplicity --no-encryption s3+http://my-s3-bucket/duplicity/dir /home/restored/dir
這行得通。
順便說一句,即使我已經閱讀了手冊頁並查看了一些範例,我發現很難想出一種方法來記住如何正確地從重複存檔中恢復文件。如果有人有一種簡潔的方式來解釋與文件路徑和鏈相關的重複性如何工作,我將不勝感激。
你從上面的恢復命令
duplicity --file-to-restore path/to/dir s3+http://my-s3-bucket/duplicity /home/restored/dir
在 s3:// url 的末尾缺少**“/dir” 。如果添加後找不到您的備份,我建議加入重複郵件列表**並將其發佈在那裡,以便我們可以嘗試更詳細地找到您的問題。
..ede / duply.net