Используемые термины: Rclone .
В данной инструкции рассмотрим разные примеры настройки утилиты rclone для хранения архивов в облаке. По мере возможности, данные примеры будут пополняться.
В нашем примере мы будем работать с Linux. Для установки достаточно ввести команду:
curl https://rclone.org/install.sh | bash
Если в нашей системе нет curl, мы получим ошибку. Установка курл выполняется из репозитория.
а) для deb:
apt install curl
б) для rpm:
yum install curl
Мы должны увидеть что-то на подобие:
…
rclone v1.59.2 has successfully installed.
Now run «rclone config» for setup. Check https://rclone.org/docs/ for more details.
* в нашем примере установлен rclone версии 1.59.2 .
Мы готовы к работе с rclone.
SSH является наиболее востребованным для передачи данных.
Для настройки вводим команду:
rclone config
Создаем новую конфигурацию:
n/s/q> n
Даем понятное название для нашего соединения:
name> SSH
Среди списка возможных шаблонов выбираем SSH/SFTP :
39 / SSH/SFTP
(sftp)
Storage> 39
Указываем адрес сервера SSH:
host> backup2.ssh.com
Имя учетной записи для подключения по SSH:
user> user22
Порт (как правило, это 22):
port> 22
На запрос использования пароля, отвечаем y (ввести свой пароль):
Option pass.
SSH password, leave blank to use ssh-agent.
Choose an alternative below. Press Enter for the default (n).
y) Yes, type in my own password
g) Generate random password
n) No, leave this optional password blank (default)
y/g/n> y
И дважды вводим пароль для подключения к SSH-серверу:
Enter the password:
password:
Confirm the password:
password:
На следующие вопросы можно не отвечать, просто нажимая Enter:
key_pem>
key_file>
y/g/n>
pubkey_file>
key_use_agent>
use_insecure_cipher>
disable_hashcheck>
Edit advanced config?
y) Yes
n) No (default)
y/n>
В конце мы увидим сводную информацию о добавляемой конфигурации. Если все верно, нажимаем Enter или вводим y :
Configuration complete.
Options:
— type: sftp
— host: backup2.ssh.com
— user: user22
— pass: *** ENCRYPTED ***
Keep this «SSH» remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
Выходим из консоли настройки rclone:
e/n/d/r/c/s/q> q
Проверить подключение и посмотреть содержимое SSH-каталога можно командой:
rclone ls SSH:
* где SSH — имя нашего соединения.
Готово. Действия, которые можно выполнить описаны ниже .
Выполним синхронизацию данных с удаленным каталогом на сервере FTP.
Переходим в режим конфигурирования rclone:
rclone config
Создаем новую конфигурацию:
n/s/q> n
Даем понятное название для нашего соединения:
name> BackupFTP
Среди списка возможных шаблонов выбираем FTP Connection :
16 / FTP
(ftp)
Storage> 16
* на момент обновления инструкции данный шаблон находится под номером 16.
Указываем адрес сервера FTP:
host> backup2.ftp.com
Имя учетной записи для подключения к серверу FTP:
user> user21
Порт (как правило, это 21):
port> 21
На запрос использования пароля, отвечаем y (ввести свой пароль):
FTP password
y) Yes type in my own password
g) Generate random password
y/g> y
И дважды вводим пароль для подключения к FTP-серверу:
Enter the password:
password:
Confirm the password:
password:
Если удаленный сервер для подключения требует TLS, в соответствующей опции задаем значение true :
tls> true
explicit_tls> true
* в противном случае оставляем поле незаполненным или ставим false .
На остальные опции отвечаем по умолчанию, нажимая Enter .
Подтверждаем, что ранее введенные данные верны:
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
Готово. Мы можем посмотреть содержимое каталога на сервере FTP:
rclone ls «BackupFTP»:
* обратите внимание, что так как название в данном примере задано с пробелами, мы пишем его в кавычках.
Готово. Действия, которые можно выполнить описаны ниже .
Пример дополнительный параметров:
При конфигурировании FTP система запрашивает, хотим ли мы сконфигурировать дополнительные параметры. Если нажать да:
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n> y
… та нам будут заданы дополнительные вопросы. Среди который, наиболее интересен про проверку валидации сертификата:
no_check_certificate> true
Очень часто, при настройке TLS на FTP-сервере используют самоподписанный сертификат. Данная опция позволит rclone не завершать работу с ошибкой при проверке валидности сертификата.
Для работы с яндекс диском необходима авторизация через браузер (OAuth). Для того, чтобы запустить утилиту на сервере без графики, мы должны сначала установить rclone на компьютер с GUI (это может быть Windows или Linux Desktop).
Скачать программу можно на официальном сайте .
И так, на компьютере с браузером запускаем конфигурацию утилиты:
rclone config
* если запускаем в Windows, то сначала переходим в каталог, куда скопировали утилиту.
Создаем новую конфигурацию:
n/s/q> n
Даем понятное название для нашего соединения:
name> YandexDisk
Среди списка возможных шаблонов выбираем Yandex Disk :
39 / Yandex Disk
«yandex»
Storage> 39
* на момент обновления инструкции данный шаблон находится под номером 39.
Идентификатор клиента и пароль оставляем пустыми:
client_id>
client_secret>
На запрос внесениея расширенных настроек отвечаем отрицательно:
Edit advanced config?
y) Yes
n) No (default)
y/n> n
На вопрос использования автоконфигурации отвечаем y >:
Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine
y) Yes (default)
n) No
y/n> y
Откроется окно браузера — вводим наши логин и пароль для доступа к Яндекс диску. В следующем окне кликаем по Log in as … :
Мы должны увидеть сообщение об успешном прохождении аутентификации OAuth:
Success!
Закрываем браузер. Выходим из конфигурирования rclone:
e/n/d/r/c/s/q> q
Смотрим содержимое конфигурационного файла. Наши действия немного будут различаться в зависимости от системы, в которой мы работаем.
а) в системах на базе Linux:
cat ~/.config/rclone/rclone.conf
б) для систем Windows:
type %USERPROFILE%.rclone.conf
Мы увидим что-то на подобие:
[YandexDisk]
type = yandex
token = {«access_token»:»AQAE5oIyAALSwlFhI9k0ssqBbqEyY»,»token_type»:»bearer»,»refresh_token»:»1:Jmlj4bnDSJIPvL:bsnTE1lkzA_5ZjikoExn2zWQIab0qReJJdAQtZnPd3:51Fx5SUiuKS8ZAtw»,»expiry»:»2022-10-29T15:29:05.484212934+03:00″}
* конфигураций может быть несколько — нас интересует yandex с тем именем, которое мы задавали в настройке.
Копируем содержимое и переходим на целевой сервер.
Открываем конфигурационный файл для rclone:
vi ~/.config/rclone/rclone.conf
* если в нашей системе уже есть конфигурационный файл и его путь отличается от нашего, то можено ввести команду:
rclone —help | grep -e ‘—config’
… которая покажет путь до него.
Ввносим содержимое, которое скопировали, например:
[YandexDisk]
type = yandex
token = {«access_token»:»AQAE5oIyAALSwlFhI9k0ssqBbqEyY»,»token_type»:»bearer»,»refresh_token»:»1:Jmlj4bnDSJIPvL:bsnTE1lkzA_5ZjikoExn2zWQIab0qReJJdAQtZnPd3:51Fx5SUiuKS8ZAtw»,»expiry»:»2022-10-29T15:29:05.484212934+03:00″}
Готово, можно проверить командой:
rclone lsd YandexDisk:
Просмотр списка контейнеров в хранилище:
rclone lsd [remote]:
Создание нового контейнера:
rclone mkdir [remote]:[имя контейнера]
* где [имя контейнера] — путь до конечной папки.
Просмотр списка файлов в контейнере:
rclone ls [remote]:[имя контейнера]
Копирование файлов с локальной машины в хранилище:
rclone copy /home/local/directory [remote]:[имя контейнера]
Синхронизация файлов на локальной машине и в хранилище:
rclone sync /home/local/directory [remote]:[имя контейнера]
Синхронизация файлов в хранилище с файлами на локальной машине:
rclone sync [remote]:[имя контейнера] /home/local/directory
При выполнении операций копирования и синхронизации rclone проверяет все файлы по дате и времени изменения или md5-сумме. Из директории-источника в директорию назначения передаются те файлы, которые были изменены.
Пока, я столкнулся с единственной проблемой.
В моем случае, программа копировала все данные на удаленное хранилище и после этого, вместо того, чтобы завершить работу, начинала копировать файл(ы) по новой.
Причина: как выяснилось, проблема в версии приложения.
Решение: в моем случае, помогла установка более ранней версии приложения. Список можно увидеть на официальном сайте .
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…