
Резервне копіювання має бути автоматичним, передбачуваним і перевіреним. Найкраще резервне копіювання — це те, яке можна швидко відновити. У цьому посібнику ви налаштуєте автоматичне резервне копіювання за допомогою вбудованих інструментів у Linux (cron, tar/rsync) та Windows (Windows Server Backup, Task Scheduler).
Ці методи ідеально підходять для робочих середовищ на VPS під управлінням Linux та Windows, розміщених на надійному VPS-хостингу, де вам потрібна чиста базова конфігурація без стороннього програмного забезпечення для резервного копіювання.
Це найбільш універсальний «вбудований» метод для Linux VPS: створіть архів локально та перенесіть його за межі приміщення за допомогою rsync через SSH.
sudo mkdir -p /backup
sudo chmod 700 /backup
Створити /usr/local/bin/backup.sh:
sudo nano /usr/local/bin/backup.sh
Приклад скрипта (налаштуйте шляхи та резервне копіювання БД відповідно до вашого стеку):
#!/usr/bin/env bash
set -euo pipefail
TS="$(date %F_%H-%M)"
DEST="/backup/backup-${TS}.tar.gz"
LOG="/backup/backup.log"
# Example: database dump (optional)
# mysqldump -u root -p'PASSWORD' --single-transaction --routines --triggers --events yourdb > /backup/db-${TS}.sql
tar -czf "$DEST"
/var/www
/etc
/home
echo "$(date -Is) Created $DEST" >> "$LOG"
Зробіть його виконуваним:
sudo chmod x /usr/local/bin/backup.sh
sudo crontab -e
Щоденне резервне копіювання о 03:00:
0 3 * * * /usr/local/bin/backup.sh >/dev/null 2>&1
Ніколи не зберігайте єдину резервну копію на тому самому VPS. Перенесіть її на інший сервер/сховище (другий VPS). Приклад:
rsync -az /backup/ user@REMOTE_SERVER:/remote-backup/
Додайте до cron о 03:30:
30 3 * * * rsync -az /backup/ user@REMOTE_SERVER:/remote-backup/ >/dev/null 2>&1
Видалити резервні копії, старші за 14 днів:
find /backup -type f -name "backup-*.tar.gz" -mtime 14 -delete
Додайте очищення до cron о 04:00:
0 4 * * * find /backup -type f -name "backup-*.tar.gz" -mtime 14 -delete >/dev/null 2>&1
# List archive contents
tar -tzf /backup/backup-YYYY-MM-DD_HH-MM.tar.gz | head
# Restore a file (example)
tar -xzf /backup/backup-YYYY-MM-DD_HH-MM.tar.gz -C /tmp ./etc/hosts
На Windows VPS ви можете використовувати вбудовану програму Windows Server Backup (WSB) і планувати завдання через Планувальник завдань. Це стосується файлів, томів і (за бажанням) стану системи.
Install-WindowsFeature Windows-Server-Backup
Приклад: резервне копіювання диска C: на виділений диск для резервних копій (замініть цільовий диск). Для стану системи додайте -systemState у відповідному місці.
# Example: volume backup
wbadmin start backup -backupTarget:E: -include:C: -quiet
Створіть заплановане завдання, яке виконується під обліковим записом SYSTEM з найвищими правами. Приклад дії:
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "wbadmin start backup -backupTarget:E: -include:C: -quiet"
Автоматичне резервне копіювання за допомогою вбудованих інструментів є надійною базою: Linux cron tar/rsync та Windows Server Backup Task Scheduler покривають більшість реальних випадків. Для стабільної роботи та передбачуваних вікон резервного копіювання запускайте їх на VPS під управлінням Linux або Windows відповідного розміру з надійним сховищем на VPS-хостингу.