*КУБ - повний комплекс хмарних послуг!
Автоматизація бекапів на Linux VPS — це базова міра захисту даних, яка рятує від помилок, збоїв і невдалих оновлень. Навіть якщо сервер працює стабільно, будь-який інцидент — від пошкодженої файлової системи до випадкового видалення — може призвести до серйозних втрат. Правильно налаштована система резервування вирішує цю проблему раз і назавжди: копії створюються автоматично, зберігаються впорядковано і при необхідності швидко відновлюються.
Перед тим як автоматизувати процес, важливо визначитися, що саме потрібно зберігати. Зазвичай це:
Створіть каталог для резервних копій:
sudo mkdir /backup
sudo chmod 700 /backup
Права 700 обмежують доступ до каталогу, що важливо для безпеки.
Основний інструмент архівування в Linux — це tar. Він стабільний, швидкий і підтримується всіма системами.
Приклад створення бекапу:
sudo tar -czvf /backup/site-$(date +%F).tar.gz /var/www/
Що тут відбувається:
Формат імен з датою дозволяє легко знаходити потрібний архів за часом створення.
Список створених архівів:
ls -lh /backup
Якщо файл відображається, його розмір реалістичний — можна додати ще одну перевірку:
tar -tf /backup/site-YYYY-MM-DD.tar.gz
Ця команда показує вміст архіву. Якщо він читається — архів у порядку.
Далі — найважливіше: зробити так, щоб резервні копії створювалися автоматично.
Відкрийте cron:
sudo crontab -e
Додайте рядок:
0 3 * * * tar -czf /backup/site-$(date +\%F).tar.gz /var/www/ >/dev/null 2>&1
Розшифровка:
Вранці в /backup вже буде свіжий архів.
Зберігати всі бекапи на тому ж VPS — ризиковано. Оптимальний варіант — передавати їх на віддалений сервер або виділене сховище.
Команда для ручного відправлення:
rsync -avz /backup/ user@IP:/remote-backups/
Переваги rsync:
Додавання в cron:
30 3 * * * rsync -avz /backup/ user@IP:/remote-backups/ >/dev/null 2>&1
Тепер копіювання відбувається автоматично, відразу після створення архіву.
Щоб каталог /backup не переповнювався:
find /backup -type f -mtime +7 -delete
Видаляє архіви, старші за 7 днів. Термін можна налаштувати під свої завдання.
Команда для cron:
0 4 * * * find /backup -type f -mtime +7 -delete
Зручно зібрати весь план в одному місці:
# Створення бекапу
0 3 * * * tar -czf /backup/site-$(date +\%F).tar.gz /var/www/
# Передача на зовнішній сервер
30 3 * * * rsync -avz /backup/ user@IP:/remote-backups/
# Очищення старих архівів
0 4 * * * find /backup -type f -mtime +7 -delete
Цього набору достатньо для повної автоматизації.
Якщо архіви створюються занадто довго, дискова підсистема завантажена або сервер зависає під час бекапу — це явна ознака того, що ресурсів не вистачає. Іноді простіше перейти на VPS з більш високою продуктивністю, ніж намагатися оптимізувати мінімальну конфігурацію.
Автоматизація бекапів на Linux VPS будується на простій, але надійній схемі: щоденне створення архівів, їх передача на зовнішній сервер і регулярне очищення старих даних. Все це займає кілька хвилин налаштування, але забезпечує спокійну роботу проекту на довгі роки. Правильно організована система резервування позбавляє адміністратора від рутини і гарантує, що дані можна відновити в будь-який момент.