Хранение и резервные копии

rclone

1 мин чтения

rclone — утилита для синхронизации файлов с облачными хранилищами. Она хорошо подходит для резервного копирования и переноса данных между облаками, а также умеет подключать бакет как папку.

Установка

sudo -v ; curl https://rclone.org/install.sh | sudo bash

Для Windows и macOS скачайте rclone с rclone.org/downloads.

Настройка

Добавьте подключение в ~/.config/rclone/rclone.conf:

[uzcloud]
type = s3
provider = Ceph
access_key_id = <Access Key>
secret_access_key = <Secret Key>
endpoint = https://s3.uzcstorage.uz
force_path_style = true
acl = private

Подключение можно создать и интерактивно командой rclone config: выберите Amazon S3 Compliant Storage Providers, затем Ceph Object Storage, и введите ключи и адрес.

Работа с файлами

rclone lsd uzcloud:                          # list buckets
rclone ls uzcloud:my-bucket                  # list objects
rclone copy ./report.pdf uzcloud:my-bucket/docs/
rclone copy uzcloud:my-bucket/docs/ ./docs/  # download
rclone sync ./site uzcloud:my-bucket/site --progress
rclone delete uzcloud:my-bucket/tmp/

Внимание

rclone sync делает получателя идентичным источнику и удаляет в получателе файлы, которых нет в источнике. Сначала проверьте результат с --dry-run.

Подключение бакета как папки

mkdir -p ~/s3
rclone mount uzcloud:my-bucket ~/s3 --vfs-cache-mode writes --daemon

Чтобы отключить: fusermount -u ~/s3 (Linux) или umount ~/s3 (macOS).

Перенос из другого облака

Добавьте второе подключение для исходного хранилища и скопируйте данные напрямую:

rclone copy old-cloud:source-bucket uzcloud:my-bucket --transfers 16 --progress

Совет

См. также: