이중성: 백업이 다시 시작되지만 현재 암호화 설정이 원래 설정과 일치하지 않습니다.

이중성: 백업이 다시 시작되지만 현재 암호화 설정이 원래 설정과 일치하지 않습니다.

저는 이중성을 사용하여 파일을 Backblaze B2에 백업했습니다. 며칠 전까지만 해도 이 방법은 매우 효과적이었습니다. 로컬 Python 라이브러리를 제거했다가 다시 설치했습니다. 또한 source현재 포함된 두 번째 스크립트로 비밀번호를 추출했습니다 . 업로드가 실패하고 다음 메시지가 계속해서 나타납니다.

Ausdruckbasierte Dateiliste wird gelesen /home/mu/.config/exclude-b2.txt
Lokale und entfernte Metadaten sind bereits synchron, kein Abgleich benötigt.
Last inc backup left a partial set, restarting.
Letzte vollständige Sicherung: Mon Sep  3 09:37:45 2018
Traceback (innermost last):
  File "/usr/bin/duplicity", line 1560, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1546, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1398, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1528, in do_backup
    incremental_backup(sig_chain)
  File "/usr/bin/duplicity", line 653, in incremental_backup
    dummy_backup(tarblock_iter)
  File "/usr/bin/duplicity", line 227, in dummy_backup
    while tarblock_iter.next():
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 523, in next
    result = self.process(self.input_iter.next())
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 195, in get_delta_iter
    for new_path, sig_path in collated:
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 286, in collate2iters
    relem2 = riter2.next()
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 354, in combine_path_iters
    refresh_triple_list(triple_list)
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 341, in refresh_triple_list
    new_triple = get_triple(old_triple[1])
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 327, in get_triple
    path = path_iter_list[iter_index].next()
  File "/usr/lib64/python2.7/site-packages/duplicity/diffdir.py", line 239, in sigtar2path_iter
    for tarinfo in tf:
  File "/usr/lib64/python2.7/tarfile.py", line 2510, in next
    tarinfo = self.tarfile.next()
  File "/usr/lib64/python2.7/tarfile.py", line 2378, in next
    raise ReadError(str(e))
 ReadError: missing or bad subsequent header

Backblaze B2에 온라인으로 접속하여 간단히 복구되기를 바라면서 마지막 아카이브와 서명 파일을 삭제했지만 복구되지 않았습니다. 이제 Duplicity의 출력은 다음과 같습니다.

Reading globbing filelist /home/mu/.config/exclude-b2.txt
Local and Remote metadata are synchronized, no sync needed.
Warning, found the following local orphaned signature file:
duplicity-new-signatures.20181005T090005Z.to.20181005T100005Z.sigtar.part
Last full backup left a partial set, restarting.
Last full backup date: Fri Oct  5 12:00:05 2018
Reading globbing filelist /home/mu/.config/exclude-b2.txt
RESTART: The first volume failed to upload before termination.
         Restart is impossible...starting backup from beginning.
Reading globbing filelist /home/mu/.config/exclude-b2.txt
Local and Remote metadata are synchronized, no sync needed.
Warning, found the following local orphaned signature file:
duplicity-new-signatures.20181005T090005Z.to.20181005T100005Z.sigtar.part
Warning, found signatures but no corresponding backup files
Last inc backup left a partial set, restarting.
Last full backup date: Mon Sep  3 09:37:45 2018
No signatures found, switching to full backup.
Reading globbing filelist /home/mu/.config/exclude-b2.txt
RESTART: Volumes 67 to 68 failed to upload before termination.
         Restarting backup at volume 67.
Restarting backup, but current encryption settings do not match original settings

호출은 다음과 같습니다.

PASSPHRASE=$passphrase \
    duplicity \
    --full-if-older-than 90D \
    --exclude-filelist ~/.config/exclude-b2.txt \
    --progress \
    --gpg-options '--cipher-algo AES256' \
    ~/ \
    b2://$b2_key_id:$b2_key@$b2_bucket

set -u모든 변수가 설정되었습니다. 정의되지 않은 변수로 종료를 활성화하고 set -x명령이 예상한 대로 작동하는지 확인했습니다.

온라인에서 모든 파일을 삭제하고 새로운 전체 백업으로 다시 시작할 수도 있지만 문제가 다시 발생하면 해결할 수 있도록 문제를 이해하고 싶습니다.

답변1

실패한 백업에 포함된 파일을 모두 삭제하지 않은 것 같습니다. 이제 삭제했으므로 백업이 정상으로 돌아왔습니다.

관련 정보