Перейти к основному содержимому
Rclone

Rclone

Rclone — это интерфейс командной строки для работы файлами в Объектном хранилище.

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

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

  1. Скачайте дистрибутив Rclone для Windows с официального сайта.
  2. Запустите приложение и следуйте инструкциям.

Настроить клиент

  1. Откройте режим конфигурирования:

    rclone config
  2. В консоли откроется диалог:

    No remotes found - make a new one
    n) New remote
    r) Rename remote
    c) Copy remote
    s) Set configuration password
    q) Quit config
    n/r/c/s/q>

    Выберите n для создания новой конфигурации и нажмите Enter.

  3. Укажите имя подключения, например, selectel:

    name> selectel
  4. Выберите Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH) и введите цифру, соответствующую номеру пункта (в зависимости от версии Rclone меняется порядок хранилищ, в данном примере это пункт 11). Нажмите Enter:

    Type of storage to configure.
    Choose a number from below, or type in your own value
    1 / Amazon Drive
    \ "amazon cloud drive"
    2 / Amazon S3 (also Dreamhost, Ceph, Minio)
    \ "s3"
    [...]
    11 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
    \ "swift"
    [...]
    Storage> 11
  5. Выберите Enter swift credentials in the next step для ввода имени пользователя и пароля:

    1 / Enter swift credentials in the next step
    \ "false"
    2 / Get swift credentials from environment vars. Leave other fields blank if using this.
    \ "true"
    env_auth> 1
  6. Программа запросит имя пользователя и пароль:

    User name to log in (OS_USERNAME).
    Enter a string value. Press Enter for the default ("").
    user> имя_пользователя
    API key or password (OS_PASSWORD).
    Enter a string value. Press Enter for the default ("").
    key> пароль
  7. При запросе хоста для доступа через Swift API введите его вручную:

    Authentication URL for server (OS_AUTH_URL).
    Enter a string value. Press Enter for the default ("").
    Choose a number from below, or type in your own value
    1 / Rackspace US
    \ "https://auth.api.rackspacecloud.com/v1.0"
    2 / Rackspace UK
    \ "https://lon.auth.api.rackspacecloud.com/v1.0"
    3 / Rackspace v2
    \ "https://identity.api.rackspacecloud.com/v2.0"
    4 / Memset Memstore UK
    \ "https://auth.storage.memset.com/v1.0"
    5 / Memset Memstore UK v2
    \ "https://auth.storage.memset.com/v2.0"
    6 / OVH
    \ "https://auth.cloud.ovh.net/v2.0"
    https://api.selcdn.ru/v3
  8. Все пункты ниже можно оставить пустыми, нажав после каждого Enter.

  9. Еще раз проверьте все настройки:

    Remote config
    --------------------
    [selectel]
    env_auth = false
    user = your_username
    key = your_password
    auth = https://api.selcdn.ru/v3
    tenant = your_username
    auth_version = 3
    endpoint_type = public
    --------------------
    y) Yes this is OK
    e) Edit this remote
    d) Delete this remote
    y/e/d>
  10. Если все указано правильно, введите y и нажмите Enter.

  11. Для выхода из диалога настроек введите q и нажмите Enter.

Работа с Rclone

Посмотреть все команды можно на сайте Rclone.

Создать контейнер

  1. Подключитесь к хранилищу.

  2. Создайте контейнер:

    rclone mkdir remote:<container_name>

    Укажите <container_name>—имя нового контейнера.

Посмотреть список объектов

  1. Подключитесь к хранилищу.

  2. Посмотрите список объектов:

    rclone ls remote:<path>

    Укажите <path> — префикс, по которому нужно вывести список объектов.

Загрузить объект

При выполнении операций копирования и синхронизации Rclone проверяет все файлы по дате и времени изменения или md5-сумме. Из директории-источника в директорию назначения передаются файлы, которые были изменены.

  1. Подключитесь к хранилищу.

  2. Загрузите объект:

    rclone copy <path> <remote_name>:<container_name>

    Укажите:

    • <path>—префикс объекта;
    • <remote_name>—имя подключения, указанное при конфигурировании Rclone;
    • <container_name>—имя целевого контейнера.

Удалить объект

  1. Подключитесь к хранилищу.

  2. Удалите объект:

    rclone deletefile remote:<path>

    Укажите <path> — префикс объекта, который нужно удалить.