Назад | Перейти на главную страницу

Дублирование -> Сбой резервного копирования S3: «[Errno 105] Нет свободного места в буфере»

У меня есть ночной скрипт на моем Ubuntu 10.04 VPS, который использует двуличие (0.6.24) для выполнения инкрементных зашифрованных резервных копий в Amazon S3. Этот сценарий работал около месяца назад, когда он начал давать сбои с такими ошибками, как:

Upload 's3://s3.amazonaws.com/{BUCKET}/duplicity-full.20140519T222412Z.vol6.difftar.gpg' failed (attempt #5, reason: error: [Errno 105] No buffer space available)
Giving up trying to upload s3://s3.amazonaws.com/{BUCKET}/duplicity-full.20140519T222412Z.vol6.difftar.gpg after 5 attempts
Backend error detail: Traceback (most recent call last):
  File "/usr/local/bin/duplicity", line 1502, in <module>
    with_tempdir(main)
  File "/usr/local/bin/duplicity", line 1496, in with_tempdir
    fn()
  File "/usr/local/bin/duplicity", line 1345, in main
    do_backup(action)
  File "/usr/local/bin/duplicity", line 1466, in do_backup
    full_backup(col_stats)
  File "/usr/local/bin/duplicity", line 538, in full_backup
    globals.backend)
  File "/usr/local/bin/duplicity", line 420, in write_multivol
    (tdp, dest_filename, vol_num)))
  File "/usr/local/lib/python2.6/dist-packages/duplicity/asyncscheduler.py", line 145, in schedule_task
    return self.__run_synchronously(fn, params)
  File "/usr/local/lib/python2.6/dist-packages/duplicity/asyncscheduler.py", line 171, in __run_synchronously
    ret = fn(*params)
  File "/usr/local/bin/duplicity", line 419, in <lambda>
    async_waiters.append(io_scheduler.schedule_task(lambda tdp, dest_filename, vol_num: put(tdp, dest_filename, vol_num),
  File "/usr/local/bin/duplicity", line 310, in put
    backend.put(tdp, dest_filename)
  File "/usr/local/lib/python2.6/dist-packages/duplicity/backends/_boto_single.py", line 266, in put
    raise BackendException("Error uploading %s/%s" % (self.straight_url, remote_filename))
BackendException: Error uploading s3://s3.amazonaws.com/{BUCKET}/duplicity-full.20140519T222412Z.vol6.difftar.gpg

Кажется, что можно загрузить несколько дублирующих томов до того, как возникнет ошибка, и если я снова запустил сценарий резервного копирования, он возобновит работу с того места, на котором остановился, поэтому я могу завершить резервное копирование, но я должен продолжать перезапускать сценарий, пока он не пройдет 30 томов.

Я использую команду дублирования:

duplicity --full-if-older-than 1M \
      --encrypt-key={KEY} \
      --sign-key={KEY} \
      --exclude={PATH}
      {PATH} \
      s3://s3.amazonaws.com/{BUCKET} -v8

Как я могу предотвратить эту ошибку?