Как сделать так, чтобы Duplicity загружался на MEGA?

Как сделать так, чтобы Duplicity загружался на MEGA?

В настройках Unity есть Backupsопция, там можно выбрать Storage Locations: FTP, SSH, WebDAV, Windows Share, Custom Location, Local Folder. Раньше там была опция резервного копирования в Ubuntu One(Cloud Storage). Я ищу что-то похожее для загрузки в MEGA.

Я попробовал все вышеперечисленные варианты, чтобы сделать резервную копию на сайте https://mega.co.nz/, но безуспешно. Я также пробовал через командную строку, используя duplicity:

duplicity /home/USERNAME/MEGAsync/ mega://USERNAME:[email protected]/MEGAsync

Но я получаю сообщение об ошибке:

BackendException: Ошибка при аутентификации клиента: -9.

Я уже установил mega.py:

sudo pip install mega.py
Requirement already satisfied (use --upgrade to upgrade): mega.py in /usr/local/lib/python2.7/dist-packages
Requirement already satisfied (use --upgrade to upgrade): pycrypto in /usr/lib/python2.7/dist-packages (from mega.py)
Requirement already satisfied (use --upgrade to upgrade): requests in /usr/lib/python2.7/dist-packages (from mega.py)
Cleaning up...

Я также попробовал это в чистой установке Virtualbox на всякий случай, если что-то мешает. Но после установки mega.py и перезагрузки я все еще получаю указанную выше ошибку.


Как использовать MEGA в качестве облачного хранилища резервных копий через настройки резервного копирования?

Пробовал это на:

  • Ubuntu Trusty Tahr 14.04.2, Duplicity 0.6.23, mega.py 0.9.18

    • Ошибка:

    • BackendException: Ошибка при аутентификации клиента: -9.

  • Ubuntu Vivid Vervet 15.04, Duplicity 0.7.01, mega.py 0.9.18

    • Ошибка:

Traceback (последний вызов был последним):
Файл "/usr/bin/duplicity", строка 1500, в
with_tempdir(main)
Файл "/usr/bin/duplicity", строка 1494, в with_tempdir
fn()
Файл "/usr/bin/duplicity", строка 1327, в main
action = commandline.ProcessCommandLine(sys.argv[1:])
Файл "/usr/lib/python2.7/dist-packages/duplicity/commandline.py", строка 1055, в ProcessCommandLine
backup, local_pathname = set_backend(args[0], args[1])
Файл "/usr/lib/python2.7/dist-packages/duplicity/commandline.py", строка 948, в set_backend
globals.backend = backend.get_backend(bend)
Файл "/usr/lib/python2.7/dist-packages/duplicity/backend.py", строка 221, в get_backend
obj = get_backend_object(url_string)
Файл "/usr/lib/python2.7/dist-packages/duplicity/backend.py", строка 207, в get_backend_object
return factory(pu)
Файл "/usr/lib/python2.7/dist-packages/duplicity/backends/megabackend.py", строка 44, вв этом
self.__authorize(parsed_url.username, self.get_password())
Файл "/usr/lib/python2.7/dist-packages/duplicity/backends/megabackend.py", строка 104, в __authorize
self.client.login(email, password)
Файл "/usr/local/lib/python2.7/dist-packages/mega/mega.py", строка 31, в login
self._login_user(email, password)
Файл "/usr/local/lib/python2.7/dist-packages/mega/mega.py", строка 42, в _login_user
raise RequestError(resp)
RequestError: -9

решение1

Я решил проблему дублирования входа на Mega с помощью следующих шагов:

Я создал файл .megarcв своем$ДОМОЙ

[Login]
Username = [email protected]
Password = the-relative-password

видетьmegarc (5) руководство

Затем я вызываю двуличие с поддельным пользователем:

duplicity my_local_dir mega://[email protected]/MEGA_REMOTE_DIR

duplicity проверяет наличие .megarcи игнорирует параметры входа. К сожалению, параметры входа expexted (в версии 7.16) и если он пропустит duplicity, то это приведет к путанице с расчетами пути.

Связанный контент