Перейти к основному содержимому
Duplicity
Последнее изменение:

Duplicity

Duplicity — интерфейс командной строки для резервного копирования. Duplicity поддерживает протоколы SSH/SCP, FTP, HSI, WebDAV, Tahoe-LAFS и Amazon S3 для соединения с файловым сервером, архивирует данные и загружает их на локальный или удаленный файловый сервер и шифрует данные при помощи утилиты GnuPG.

Установить клиент

  1. Установите Duplicity:

    sudo apt-get install duplicity
  2. Установите пакеты python-swiftclient и librsync:

    sudo apt-get install python-swiftclient
    sudo apt-get install librsync-dev
  3. Установите систему контроля версий Bazaar и загрузите swiftbackend:

    sudo apt-get install bzr
    bzr branch lp:~mhu-s/duplicity/swiftbackend
  4. Установите swiftbackend:

    cd swiftbackend && sudo python dist/setup.py install

Подключиться к хранилищу через Duplicity

  1. В текстовом редакторе укажите скрипт для резервного копирования:

    // Авторизационные данные для подключения к хранилищу
    SWIFT_PASSWORD="<password>"
    SWIFT_AUTHVERSION=2
    SWIFT_TENANTNAME="<username>"
    SWIFT_AUTHURL=https://swift.ru-1.storage.selcloud.ru
    SWIFT_USERNAME="<username>"
    # Выполнение архивирования
    duplicity <path> swift://<container-name>

    # Очистка авторизационных данных для безопасности
    unset SWIFT_PASSWORD
    unset SWIFT_AUTHVERSION
    unset SWIFT_TENANTNAME
    unset SWIFT_AUTHURL
    unset SWIFT_USERNAME

    Укажите:

    • <password> — пароль сервисного пользователя;
    • <username> — имя сервисного пользователя;
    • ru-1 — пул, в котором размещается объектное хранилище;
    • <path> — путь к папке на локальной машине (например, /folder-1/folder-2/).
  2. Сохраните файл и сделайте его исполняемым:

    chmod +x <file_name>

    Укажите <file_name> — имя файла.

  3. Выполните команду:

    ./<file_name>
  4. Укажите кодовое слово для доступа для доступа к файлам. После этого запустится резервное копирование. Статистка отобразится в консоли.

  5. Для загрузки зашифрованной резервной копии из хранилища на локальную машину скопируйте скрипт из шага 1 и замените команду duplicity <path> swift://<container_name> на duplicity swift://<container_name> <path>. Укажите:

    • <container_name> — имя контейнера Объектного хранилища;
    • <path> — путь к папке на локальной машине (например, /folder-1/folder-2/).
  6. Сохраните скрипт в файл с именем restore.sh и сделайте его исполняемым. При выполнении команды ./restore.sh буде запрошено кодовое слово. После ввода кодового слова все файлы из резервной копии будут загружены в указанную директорию на локальной машине.