Таким образом, у меня есть эта ошибка, которая, по-видимому, является известной проблемой. Я ищу обходное решение, пока оно не фиксируется, потому что я не могу позволить себе обойтись без помощи системного резервного копирования.
Traceback (most recent call last):
File "/usr/bin/duplicity", line 1532, in <module>
with_tempdir(main)
File "/usr/bin/duplicity", line 1526, in with_tempdir
fn()
File "/usr/bin/duplicity", line 1380, in main
do_backup(action)
File "/usr/bin/duplicity", line 1401, in do_backup
sync_archive(decrypt)
File "/usr/bin/duplicity", line 1139, in sync_archive
remote_metafiles, ignored, rem_needpass = get_metafiles(remlist)
File "/usr/bin/duplicity", line 1029, in get_metafiles
pr = file_naming.parse(fn)
File "/usr/lib/python2.7/dist-packages/duplicity/file_naming.py", line 400, in parse
pr = check_inc()
File "/usr/lib/python2.7/dist-packages/duplicity/file_naming.py", line 340, in check_inc
t1 = str2time((m1 or m2).group("start_time"), short)
File "/usr/lib/python2.7/dist-packages/duplicity/file_naming.py", line 290, in str2time
t = dup_time.genstrtotime(timestr.upper())
File "/usr/lib/python2.7/dist-packages/duplicity/dup_time.py", line 295, in genstrtotime
return override_curtime - intstringtoseconds(timestr)
File "/usr/lib/python2.7/dist-packages/duplicity/dup_time.py", line 203, in intstringtoseconds
error()
File "/usr/lib/python2.7/dist-packages/duplicity/dup_time.py", line 194, in error
raise TimeException(bad_interval_string % interval_string)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
Связанные проблемы:
Базовой проблемой являются строки Unicode - у Вас есть они где-нибудь и Двуличность (или по крайней мере, версия, которую Вы используете возможно) не настроен для обработки строк Unicode правильно. Это происходит из-за протестов Python 2.
<час>В Python 2, существует два отдельных "строковых" класса типа:
str
- Это - типичный стандартный кодек ASCII, замеченный во многих системах, и является более или менее просто стандартным A-Z, 0-9, некоторыми символами от набора клавиатуры символов.
unicode
- Это - кодировка UTF-8, UTF-16, и т.д. кодировка, которая имеет огромный диапазон международных символов, эмодзи, и т.д.
Независимо от того, что передается Двуличности, в этом случае, нас, вероятно, использование символа от наборов символов UTF, который является вне стандартного диапазона ASCII символов. Поэтому мы добираемся UnicodeDecodeError
в traceback - мы пытаемся преобразовать строки Unicode в строки ASCII, и мы не можем из-за символов, являющихся вне наборов символов ASCII.
я предложил бы регистрировать ошибку в Двуличности для записывания, они не обрабатывают Unicode правильно, но я также посмотрел бы на любую Двуличность файлов, обрабатывает, и удостоверьтесь, что у Вас нет символов Unicode (или скрытые секретные управляющие символы) в строках, с которыми это пытается работать.
ПРИМЕЧАНИЕ: Согласно связанным ошибкам, это уже фиксируется; возможно, что это было зафиксировано в более поздняя версия Deja-дубликата, но не версия, которую Вы используете, в этом случае необходимо было бы найти, что Бэкпортированная или Обновленная версия работает вокруг ошибки.
На одной из ошибок, обходное решение переименования имен файлов с внешними наборами символов в наборе Unicode должно быть переименовано к именам файлов только для ASCII, чтобы DejaDup обработал их правильно. Это - единственное известное обходное решение, за исключением обновления к более новому DejaDup verison.
Убедитесь, что вы используете последнюю версию 0.7.12, поскольку в этом отношении произошли некоторые улучшения.
Похоже, двуличность пытается вызвать TimeException , но спотыкается из-за распечатки перевода ошибки.
Текущий обходной путь должен заключаться в установке LC_ALL env var, чтобы запретить перевод на двуличие, и использовании английских строк по умолчанию. Либо экспортируйте параметр, либо поместите его перед вызовом дублирования, например,
LC_ALL=C duplicity ...
Это, конечно, не устранит ошибку, но, по крайней мере, покажет, чем вызвана ошибка (TimeException). [ 114]
.. Эда / duply.net