Эффективное Резервное Копирование в Облако с Rclone

Rclone - это утилита командной строки с открытым исходным кодом для управления файлами на облачных дисках. Она поддерживает более 70 различных облачных хранилищ, включая Amazon S3, Google Drive, Microsoft OneDrive, Dropbox, Cephs, OwnCloud и даже Яндекс Диск.

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

  • Копирование, перенос и удаление файлов между локальным компьютером и облачным хранилищем.
  • Синхронизация файлов между локальным компьютером и облачным хранилищем.
  • Резервное копирование файлов в облачное хранилище.
  • Восстановление файлов из облачного хранилища.
  • Миграция данных между облачными хранилищами.
  • Подключение облачного хранилища к файловой системе Linux или macOS.

Чтобы использовать Rclone, необходимо сначала установить ее. Программа Rclone представляет собой один исполняемый файл rclone или rclone.exe в Windows, который вы можете просто загрузить в виде zip-архива и извлечь в любое место по вашему выбору.

Поддерживаемые ОС: Linux, macOS, BSD, Windows, Android (пока не в официальном релизе).

Для установки Rclone вы может использовать стандартные репозитории вашей ОС, но возможно Rclone будет более старой версии чем на сайте. Я зачастую использую Debian, Ubuntu, давайте проверим какая версия в репозитории:

# apt info rclone
Package: rclone
Version: 1.53.3-4ubuntu1.22.04.2

Видим что Rclone версии 1.53.3, а на сайте текущая версия 1.65.0. С такой разницей в версии лучше установить с сайта более новую:

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

Для некоторых сервисов, например Google Drive, потребуется браузер. А вам нужно например настроить rclone на удаленном сервере (VPS), где только командная строка Linux. В этом случае проще всего настраивать путем копирования файла конфигурации. Rclone хранит всю свою конфигурацию в одном файле. Сначала вы настраивать rclone на своем компьютере, а потом копируете его на свой удаленный сервер или сервера.

Для Windows конфигурационный файл rclone.conf для копирования находится по такому пути:

C:\\Users\\<USER>\\AppData\\Roaming\\rclone\\rclone.conf

После установки Rclone необходимо настроить ее для работы с выбранным облачным хранилищем. Для этого вы можете использовать следующую команду:

# rclone config
2
023/12/21 00:15:09 NOTICE: Config file "/root/.config/rclone/rclone.conf" not found - using defaults
No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q>

Эта команда запустит мастер настройки, который поможет вам создать профиль для выбранного облачного хранилища. На первом шаге выбираем n и задаем имя удаленного подключения, в примерах в этой статье мое подключение будет называться remotegd. remotegd настроено у меня на подключение к Google Диску.

Не буду расписывать здесь все тонкости настройки подключения Rclone к Google Диску (Google Drive), вам достаточно использовать официальную инструкцию. Подскажу сразу работать не будет;-), но вы не отчаиваетесь. В моем случае ясность внесла команда, которая должна была вывести список удаленных директорий, но она мне вывела еще одну ссылку на подтверждения Google (другие варианты команд просто не работали выводя неинформативную ошибку "Failed to create file system for "gdrive:/Backups/": didn't find section in config file"). Перейдя по новой ссылке и подтвердив я смог начать работу.

rclone lsd remotegd:

После настройки Rclone вы можете использовать ее для выполнения различных задач. Полный список команд Rclone можно найти в официальной документации.

Например, чтобы скопировать все файлы из локальной папки в облачное хранилище (в моем случае Google Drive), вы можете использовать следующую команду:

rclone copy /path/to/local/folder remotegd:/path/to/remote/folder

Миграция данных из Dropbox в Google Drive (соответственно предварительно вы должны создать подключение с именем dropbox)

rclone copy dropbox:/path/to/files remotegd:/path/to/remote/files

Чтобы создать (синхронизировать) резервную копию файлов в облачное хранилище, вы можете использовать следующую команду. То есть содержимой директории rclonetest будет будет сравнено с содержимым удаленной директории и недостающий файлы будут скопированы.

rclone.exe sync c:/rclonetest  remotegd:/Backups/rclonetest
 
rclone sync /path/to/local/folder remotegd:/path/to/remote/folder

Подключение Google Drive к файловой системе Linux:

rclone mount remotegd:/mnt/gdrive

Rclone - это мощный инструмент, который может быть использован для выполнения различных задач с облачными хранилищами.

PQ VPS сервера в 28+ странах.