У цій статті ми будемо працювати з послугою "External FTP Storage".
Активація FTP-сховища
Ця послуга доступна в відповідному розділі Білінгу. Виберіть "Динамічний план".
Вкажіть бажаний обсяг сховища (до 3,5 ТБ), наприклад, 50 ГБ, потім додайте план до кошика і здійсніть оплату.
Через кілька секунд після оплати послуга буде активована і видима в спеціальному розділі.
Щоб отримати інформацію, необхідну для роботи з нею, виберіть послугу і натисніть кнопку "Інструкція".
Відкриється нова вкладка з усіма необхідними даними для вашої роботи.
Тестове завантаження за допомогою lftp
Тепер перейдемо до нашого основного сервера, з якого буде відбуватися завантаження файлів до FTP-сховища. Нам знадобиться стаття "Робота з FTP-сховищем".
Нам знадобиться lftp. Щоб встановити утиліту на Debian/Ubuntu, використовуйте таку команду:
sudo apt-get -y install lftp
Чудово! Давайте спробуємо завантажити тестовий файл, але спочатку створимо його за допомогою команди touch.
Тепер давайте введемо команду для завантаження файлу:
lftp ftp://login:[email protected]:21 -e "set ftp:ssl-allow no; put -O / file; quit"
login — ім'я користувача сховища.
pass — пароль від сховища.
backup.s1.fsn.spacecore.pro — сервер завантаження (не змінюйте це).
/ — каталог, куди файл буде завантажений в сховище.
file — назва файлу, який потрібно завантажити.
Для нашої послуги використовуйте таку команду:
lftp ftp://spacecore35176:[email protected]:21 -e "set ftp:ssl-allow no; put -O / spacecore; quit"
Після введення команди вона підключиться до віддаленого сервера і завантажить файл (час завантаження залежить від розміру передаваного файлу і швидкості мережі). Після завершення процесу ви можете побачити свій файл, підключившись до сховища через FTP.
Проте питання залишається: "Як можна автоматизувати цей процес?"
Спочатку створімо скрипт, який виконуватиме всі необхідні дії при його виконанні. Створіть файл і відкрийте його за допомогою команди:
nano backup.sh
Де backup.sh — назва файлу.
Створіть короткий скрипт з нашою командою для завантаження.
#!/bin/bash
lftp ftp://spacecore35176:[email protected]:21 -e "set ftp:ssl-allow no; put -O /backups backup.tar.gz; quit"
Де #!/bin/bash — необхідний рядок, що вказує, що це саме shell-скрипт.
/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 — шлях до виконуваного файлу.
Чудова робота! Ми створили власний скрипт для завантаження резервних файлів і навчилися автоматизувати цю задачу за допомогою CRONTAB.