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

rclone с WebShield S3

rclone — универсальная утилита командной строки для синхронизации файлов с объектным хранилищем. С WebShield S3 работает через универсальный бэкенд S3. Как получить ключи и создать бакеты — см. Объектное хранилище.

  • Endpoint: https://s3.webshield.pro
  • Access Key ID и Secret Access Key со страницы Хранилище S3 в личном кабинете.
  • Полное имя бакета с префиксом аккаунта (например, u42-backups).
Terminal window
# Debian/Ubuntu
sudo apt install rclone
# macOS
brew install rclone
# или официальный установщик: https://rclone.org/install/

Добавьте remote в ~/.config/rclone/rclone.conf (создайте файл, если его нет):

[webshield]
type = s3
provider = Other
access_key_id = WSS...
secret_access_key = <секрет>
endpoint = https://s3.webshield.pro
force_path_style = true

provider = Other и force_path_style = true заставляют rclone работать с универсальным path-style эндпоинтом S3. Как альтернатива — запустите rclone config, выберите Amazon S3 CompliantOther и введите те же значения интерактивно.

За именем remote (webshield:) следует bucket/path:

Terminal window
rclone ls webshield:u42-backups # список объектов
rclone copy ./dump.sql.gz webshield:u42-backups/db/ # загрузить один файл
rclone sync ./media webshield:u42-backups/media # зеркалировать каталог (с удалением лишнего)
rclone copy webshield:u42-backups/db ./restore # скачать
rclone delete webshield:u42-backups/old # удалить путь

rclone sync приводит приёмник в соответствие с источником, включая удаление — если нужно только добавлять и обновлять файлы, используйте rclone copy.

Полезные флаги:

Terminal window
rclone sync ./media webshield:u42-backups/media \
--progress \ # статистика передачи в реальном времени
--transfers 16 \ # параллельные передачи
--checksum # сравнение по контрольной сумме, а не по времени изменения
  • WebShield использует path-style адресацию; её включает force_path_style = true.
  • Бакеты создаются и удаляются только в личном кабинете; rclone mkdir webshield:name бакет не создаёт.
  • При отрицательном балансе хранилище переходит в режим «только чтение»: загрузка (copy/sync) отклоняется, скачивание работает. Пополните баланс, чтобы вернуть запись.