Як використовувати rclone для резервного копіювання на Google Drive в Linux

Досі немає офіційного клієнта Linux для Google Drive, але ви можете створити резервну копію на своєму Google Drive за допомогою утиліти rclone прямо з командного рядка. Ми покажемо вам, як.

Де Google Диск у Linux?

Незважаючи на обіцянку підтримки Linux «незабаром» у 2012 році, немає жодних ознак того, що Google коли-небудь створить рідний клієнт Linux для Google Drive. Існує кілька неофіційних сторонніх рішень, наприклад InSync, overGrive і ODrive, а деякі браузери файлів дозволяють інтеграцію з вашим Диском Google, наприклад Файли в GNOME.

Додатки сторонніх розробників є комерційними продуктами, які вимагають безпосередньої покупки або підписки. Вони добре працюють, коштують не дуже багато, і насправді у overGrive є безкоштовна версія, яка пропонує обмежену функціональність безкоштовно.

Але що робити, якщо ви хочете створювати та запускати резервні копії з командного рядка? Або включити цю функцію в сценарії? Це все можливо завдяки дивовижній програмі під назвою rclone. Насправді, за допомогою rclone можна резервне копіювання, завантаження та синхронізація файлів у понад сорока різних хмарних рішень. Це як rsync для хмар.

Встановлення rclone

rclone майже напевно не буде встановлено на вашому комп’ютері з Linux за замовчуванням. На щастя, є сценарій встановлення, який повинен працювати на всіх дистрибутивах. Процес установки використовує завивати. На комп’ютерах, які використовувалися для дослідження цієї статті, у Fedora 31 і Manjaro 18.1.0 уже було встановлено curl, але curl потрібно було встановити на Ubuntu 18.04 LTS.

В Ubuntu виконайте цю команду, щоб встановити її:

sudo apt-get install curl

Після встановлення curl встановіть rclone за допомогою цієї команди:

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

Коли установка rclone завершиться, ви побачите повідомлення про успіх.

Це встановило програму rclone на вашому комп’ютері Linux. Наступним кроком є ​​виконання процесу налаштування та автентифікації rclone для доступу до вашого Google Диска.

Створення віддаленого підключення rclone

Підключення до віддалених хмарних сервісів у світі rclone називаються «віддаленими». Нам потрібно створити його для Google Диска. Запустіть процес налаштування rclone за допомогою цієї команди:

rclone config

У процесі налаштування виникає багато питань. Але не засмучуйтеся, багато з них можна залишити за замовчуванням і просто прийняти, натиснувши «Enter».

  3 простих способи шифрування файлів у Linux

rclone повідомляє нам, що не налаштовано пульти дистанційного керування. Натисніть «n» і натисніть «Enter», щоб створити новий пульт. Він запропонує вам назву. Ми будемо називати це «Google-диск». Використовуйте будь-яке ім’я, яке вам подобається.

Довге меню дозволяє вибрати тип сховища, до якого ви створюєте віддалене підключення.

Прокручуйте список, доки не побачите запис для Диска Google, і запишіть його номер.

Ми бачимо, що в даному випадку це номер 13. Введіть це як тип зберігання та натисніть «Enter».

Вам буде запропоновано ввести ідентифікатор клієнта програми Google. Натисніть «Enter», щоб прийняти значення за замовчуванням.

Потім вам буде запропоновано ввести секретний ключ клієнта програми Google.

Знову просто натисніть «Enter». Вас просять вказати область, яку матиме rclone, коли він працюватиме на вашому Google Диску. Натисніть «1», а потім натисніть «Enter».

Щоб отримати ідентифікатор кореневої папки, просто натисніть «Enter».

У запиті «Облікові дані служби» натисніть «Enter».

У підказці «Редагувати розширені конфігурації» просто натисніть «Enter». У меню «Використовувати автоматичну конфігурацію» натисніть «y», а потім натисніть «Enter».

The

Це змушує rclone зв’язуватися з вашим Диском Google і запускати ваш браузер, щоб дозволити rclone взаємодіяти з вашим Диском Google.

У вікні браузера натисніть обліковий запис Google, який ви хочете використовувати.

Натисніть кнопку «Дозволити», щоб надати rclone доступ до вашого Google Диска.

Після завершення автентифікації ви побачите повідомлення «Успіх!» повідомлення у вікні браузера. Ви можете закрити браузер і повернутися до вікна терміналу.

У підказці «Налаштувати це як груповий диск» введіть «n», а потім натисніть «Enter».

РКлон

У меню «Так, редагувати, видалити» введіть «y», а потім натисніть «Enter».

РКлон

У останньому меню введіть «q» і натисніть «Enter».

Сценарій резервного копіювання rclone

Програма rclone дуже багатофункціональна. Це чудово, але це означає є багато варіантів. Команда, яку ми розглянемо нижче, копіює файли з вашого локального комп’ютера на ваш Google Диск. Це одностороння копія в хмару; це не двостороння синхронізація між вашим Google Диском і локальним комп’ютером, хоча rclone може це зробити. Ми використовуємо це як основну форму резервного копіювання за межами сайту.

  Як встановити Netstat на Linux

Введіть (або скопіюйте та вставте) це в текстовий редактор і збережіть на своєму комп’ютері. Ми назвали це gbk.sh. Ви можете називати це так, як для вас є сенс.

#!/bin/bash

/usr/bin/rclone copy --update --verbose --transfers 30 --checkers 8 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "/home/dave/Documents" "google-drive:LinuxDocs"

Ось що означають параметри:

копіювати: копіювати файли з локального комп’ютера на віддалене сховище, пропускаючи файли, які вже є на віддаленому сховищі.
–оновлення: пропускати будь-які файли, які знаходяться на віддаленому сховищі, час зміни яких є новішим, ніж файл на локальному комп’ютері.
–verbose: надає інформацію про кожен файл, який передається.
–transfers 30: встановлює кількість файлів для паралельного копіювання.
–шашки 8: Скільки «шашок» запускати паралельно. Шашки контролюють передачі, що виконуються.,
–contimeout 60s: час очікування підключення. Він встановлює час, коли rclone намагатиметься встановити з’єднання з віддаленим сховищем.
–тайм-аут 300 с: якщо передача стає простою протягом цього періоду часу, вона вважається зламаною та відключена.
–повторні спроби 3: якщо є так багато помилок, вся дія копіювання буде перезапущена.
–low-level-retries 10: повторна спроба низького рівня намагається повторити одну невдалу операцію, наприклад, один запит HTTP. Це значення встановлює обмеження на кількість повторів.
–stats 1s: rclone може надати статистику переданих файлів. Це встановлює частоту оновлення статистичних даних на одну секунду.
“/home/dave/Documents”: локальний каталог, який ми збираємося скопіювати у віддалене сховище.
«google-drive:LinuxDocs»: каталог призначення у віддаленому сховищі. Зверніть увагу на використання «google-drive», це ім’я, яке ми дали цьому віддаленому з’єднанню під час послідовності конфігурації rclone. Також зверніть увагу на двокрапку «:», яка використовується як роздільник між ім’ям віддаленого сховища та ім’ям каталогу. Підкаталоги розділяються звичайною косою рискою «/». Якщо каталог призначення не існує, він буде створений.

Деякі з цих значень є стандартними, але ми включили їх тут, щоб ми могли їх обговорити. Таким чином, якщо вам потрібно змінити значення, ви знаєте, який параметр налаштувати.

Зробіть скрипт виконуваним за допомогою цієї команди:

chmod +x gbk.sh

Запуск сценарію резервного копіювання

Наш сценарій резервного копіювання збирається скопіювати нашу папку «Документи» на наш Google Диск. У нашій папці «Документи» ми маємо колекцію нот.

Ми можемо запустити сценарій резервного копіювання за допомогою цієї команди:

./gbk.sh

Ми просили оновлювати статистичні дані кожні одну секунду (–stats 1s), а також запитали детальний вихід (–verbose). Тоді не дивно, що ми отримуємо багато екрана. Зазвичай це хороший варіант увімкнути докладний вихід для нової функціональності, щоб ви могли помітити проблеми. Ви можете зменшити кількість результатів, коли ви задоволені, що все працює гладко.

  Як грати в Subnautica на Linux

Ми отримуємо остаточний підсумок, який повідомляє, що 60 файлів було передано без помилок. Передача тривала приблизно 24 секунди.

Давайте перевіримо наш Google Диск і подивимося, що сталося в нашому хмарному сховищі.

Створено каталог «LinuxDocs», тому це виглядає багатообіцяюче. Якщо ми двічі клацнемо його, щоб зазирнути всередину, ми побачимо, що всі файли перенесено на наш Google Диск.

Файли в

Використання rclone для перегляду файлів на Google Диску

Ми можемо використовувати rclone, щоб зазирнути в папку на Google Диску прямо з вікна терміналу:

rclone ls google-drive:/LinuxDocs

Верхівка айсберга

Чудово, що ми можемо виконати цей тип копіювання прямо з командного рядка. Ми можемо включити використання нашого хмарного сховища в сценарії, а також запланувати виконання сценаріїв резервного копіювання за допомогою cron.

У rclone є абсолютне багатство команд, вам рекомендується перегляньте їхню документацію та чудовий веб-сайт. Ми ледве подряпили поверхню тут, і трохи читання та гра з rclone окупить зусилля багаторазово.

Строго кажучи, це не справжня резервна копія. Це віддалена копія ваших файлів і даних за межами сайту, що, безумовно, добре мати, але це просто копія файлів. Він не пропонує керування версіями чи інші функції, які пропонують справжні рішення для резервного копіювання.

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