Duplicity

重複性突然因 Python 元組錯誤而失敗

  • October 7, 2019

我已經在 cron 工作中使用 duplicity 一年了,效果很好。從上週開始,我收到以下消息:

Ausdruckbasierte Dateiliste wird gelesen /home/mu/.config/exclude-b2.txt
Traceback (most recent call last):
 File "/usr/bin/duplicity", line 1637, in <module>
   if "Forced assertion for testing" in util.uexc(e):
 File "/usr/lib64/python2.7/site-packages/duplicity/util.py", line 82, in uexc
   return ufn(m)
 File "/usr/lib64/python2.7/site-packages/duplicity/util.py", line 63, in ufn
   return filename.decode(globals.fsencoding, 'replace')
AttributeError: 'tuple' object has no attribute 'decode'

我的 Fedora 30 系統上對軟體包的最後一次升級duplicity是 2019-05-09,我執行的是 0.7.19 版本。備份轉到 Backblaze B2。

有什麼辦法可以把它固定下來嗎?

這是另一個實例,其中中斷的備份使重複性處於無法恢復的狀態。我已經從上次增量備份中刪除了部分文件,現在它又可以工作了。

查看可從gnu下載的原始碼,它似乎正在嘗試處理異常,並在這樣做的同時得到異常,這沒有幫助。我認為你在最後幾行/usr/bin/duplicity

except Exception as e:
   util.release_lockfile()
   if "Forced assertion for testing" in util.uexc(e):
       log.FatalError(u"%s: %s" % (e.__class__.__name__, util.uexc(e)),
                      log.ErrorCode.exception,
                      e.__class__.__name__)
   else:
       # Traceback and that mess
       log.FatalError(util.exception_traceback(),
                      log.ErrorCode.exception,
                      e.__class__.__name__)

它要求util.uexc(e)查找僅在測試期間(顯然)使用的一些文本,並且該常式由於某種原因而失敗。您可以嘗試僅更改ifto startif False and以繞過此測試,然後查看是否記錄了異常的真正原因。您也可以嘗試暫時更改為 C 語言環境,看看是否有任何改變。

引用自:https://unix.stackexchange.com/questions/536059