Копирование данных между серверами — основа любой работы системного администратора. Данные должны быть корректными, без ошибок и доступными для тех, кому они нужны. В далеком прошлом администраторы могли использовать Rsync для копирования данных между серверами через терминал, но с появлением облачных вычислений и хранилищ данные могут быть распределены по нескольким сервисам и использоваться сотнями людей. Здесь в игру вступает Rclone.
Rclone — это Rsync для нескольких облачных хранилищ. Это утилита на основе терминала, которая синхронизирует папки и файлы не только с локальной файловой системой, но также с Google Диском, OneDrive, Dropbox и Amazon и другими.
Читайте также: Как получить доступ к Microsoft Exchange в Linux
Настройка
Rclone доступен в качестве исходного кода с сайта или в большинстве репозиториев основных дистрибутивов Linux. Поскольку я использую Ubuntu, я просто установил его через терминал:
sudo apt install rclone
После установки пользователям необходимо внести некоторые изменения в конфигурацию. Введите следующее:
rclone config
Вам будет представлен следующий экран:
Терминология немного двусмысленна, но для этого нам нужно новое соединение, поэтому мы выбираем «n». Терминал будет двигаться дальше и попросит вас выбрать тип поставщика хранилища, который вы хотите использовать. В данном случае Google Диск.
Rclone спросит, хотите ли вы выполнить автоматическую настройку. Я выбрал «да», и он дал мне ссылку для открытия. Это приведет вас к логину вашего провайдера, чтобы вы могли разрешить Rclone использовать эту услугу.
Терминал затем сообщит об успехе и спросит, хотите ли вы продолжить, и предоставит данные токена доступа, которые я, очевидно, не буду делать скриншот. И последнее, что вам нужно сделать, это зашифровать ваше соединение и пароль. В целом это хорошая идея, поскольку не рекомендуется передавать информацию в виде обычного текста.
Установив шифрование, вы можете ввести следующее, чтобы получить список своих облачных файлов. Обратите внимание, что вам нужно использовать имя выбранного вами хранилища, в моем случае это было «Google», но вы могли назвать его как-нибудь по-другому. Я бы советовал придерживаться названия компании или бренда, особенно если у вас несколько учетных записей облачного хранилища.
rclone ls Google:
При этом будут извлечены все имеющиеся у вас файлы, а для некоторых пользователей это будет огромное количество, поэтому лучше искать по каталогу, используя:
rclone lsd Google:
Использование Rclone
Теперь вы можете копировать файлы в облачное хранилище, введя следующие команды из Терминала:
rclone copy /path/to Google:Foldername
В приведенном выше примере я хотел скопировать снимки экрана из этого руководства в папку «Toshiba» на моем Google Диске. На скриншотах ниже показаны локальные файлы, а затем файлы в том виде, в котором они находятся в моем облачном хранилище. Измените приведенную выше команду «path/to» для каталога, который вы хотите скопировать. Например, в моем случае это было:
rclone copy home/ubuntu/Pictures Google:Toshiba
Rclone также может удалять файлы и каталоги, их можно найти в онлайн-документации .
Rclone предоставляет пользователям быстрый и относительно безопасный способ резервного копирования важных файлов из Терминала. Можно спорить о том, есть ли ему еще место в наборе инструментов Linux. Лично я считаю это полезным, но у менее опытных пользователей могут возникнуть проблемы с настройкой и средой без графического интерфейса. Какой ваш любимый метод резервного копирования? Используете ли вы Rclone или предпочитаете более традиционные методы? Дайте нам знать в разделе комментариев.