Автоматичне відвантаження резервних копій

Багато користувачів думають про створення регулярних резервних копій своїх даних, і це чудово! Але як автоматизувати резервне копіювання?

У цій статті ми будемо працювати з сервісом *Зовнішній FTP-репозиторій

Активація FTP-сховища

Ця послуга доступна у відповідному розділі Billing. Виберіть «Динамічний тариф».

Ми вказуємо необхідну кількість пам’яті сховища (до 3,5 Тб), наприклад, 50 Гб, після чого додаємо тариф у кошик і оплачуємо.

Через кілька секунд після оплати послугу буде активовано і вона стане видимою в спеціальному розділі.

Ми можемо отримати дані для роботи з нею, вибравши послугу та натиснувши кнопку «Інструкції».

У окремому вікні ви побачите вкладку з усіма необхідними даними для роботи.

Тестове відвантаження lftp

Нам знадобиться lftp. Встановлення утиліти на Debian/Ubuntu здійснюється за допомогою команди

sudo apt-get -y install lftp

Чудово! Спробуємо завантажити тестовий файл, але спершу створимо його за допомогою команди touch.

Так. Введіть команду для завантаження файлу:

lftp ftp://login:pass@backup.s1.fsn.spacecore.pro:21 -e "set ftp:ssl-allow no; put -O / file; quit"

login — ім'я користувача сховища. pass — пароль до сховища.

backup.s1.fsn.spacecore.pro — сервер відвантаження (не потрібно змінювати).

/ — каталог, куди буде завантажено файл у репозиторії.

file — ім'я файлу для відвантаження.

Для нашого сервісу ця команда буде актуальною, введіть.

lftp ftp://spacecore35176:KDAcfR4p1tyz@backup.s1.fsn.spacecore.pro:21 -e "set ftp:ssl-allow no; put -O / spacecore; quit"

Після введення команди підключення до віддаленого сервера і відвантаження файлу (час відвантаження залежить від розміру передаваного файлу та швидкості мережі). Після завершення процесу ми можемо побачити наш файл, підключившись до сховища через FTP.

Але залишається питання: «Як автоматизувати цей процес?».

По-перше, створіть скрипт, який виконає всі необхідні дії за нас. Створіть файл і відкрийте редактор за допомогою команди

nano backup.sh

Де backup.sh — це ім'я файлу

#!/bin/bash
lftp ftp://spacecore35176:KDAcfR4p1tyz@backup.s1.fsn.spacecore.pro:21 -e "set ftp:ssl-allow no; put -O /backups backup.tar.gz; quit"

Де #!/bin/bash — необхідний рядок, що вказує на те, що це shell script.

/backups — новий каталог для зберігання завантаженого файлу в репозиторії (який має бути створений на FTP-сервері).

backup.tar.gz — нове ім'я файлу для відвантаження завчасно.

За бажанням, перед завантаженням файлу ви можете додати команди для архівації тих важливих даних, які потрібно зберегти на віддаленому сервері.

Ми зберігаємо наш скрипт за допомогою комбінації Ctrl + X -> y.

Тепер ми намагаємося відвантажити файл за допомогою Shell скрипту (у нашому випадку, архів вказано для відвантаження backup.tar.gz, тому спершу створимо його). Потім використовуємо наш скрипт.

sh backup.sh

Відвантаження розпочато. Очікуємо завершення процесу.

Скрипт працює! Наш архів даних успішно завантажено на віддалений FTP-сервер.

Автоматизація через CRONTAB

Більше інформації про роботу з CRON можна знайти у вигляді публічних статей на різних веб-сайтах.

Використовуйте команду для відкриття конфігурації CRON.

crontab -e

Готово. Наразі він порожній. У вигляді коментарів, інформація від розробників щодо налаштування автоматизації.

Хвилина Година День Місяць Гроші Тиждень /Шлях/До/Файлу

Додайте цей рядок для встановлення регулярного запуску нашого скрипта для завантаження щодня о 00:00 за серверним часом.

0 0 * * * /root/backup.sh

Де /root/backup.sh — це шлях до виконуваного файлу.

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

Last updated