Студзень 13, 2026Кіраўніцтва
Як наладзіць аўтаматычнае рэзервовае капіраванне на серверы Linux
Пакрокавае кіраўніцтва па наладзе аўтаматызаваных скрыптоў бэкапа з выкарыстаннем задач cron для файлаў і баз даных.

Рэгулярныя бэкапы неабходны для абароны вашых даных. Гэта кіраўніцтва пакажа вам, як наладзіць аўтаматычнае рэзервовае капіраванне для вашых файлаў і баз даных з выкарыстаннем shell-скрыптоў і задач cron на вашым серверы Hiddence.
Стварэнне скрыпта бэкапа
Стварыце скрыпт бэкапа для вашых файлаў:
bash
sudo nano /usr/local/bin/backup.sh
#!/bin/bash
BACKUP_DIR="/backups"
SOURCE_DIR="/var/www"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz $SOURCE_DIR
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/backup.shНалада задачы Cron
Заплануйце аўтаматычныя бэкапы з дапамогай cron:
bash
sudo crontab -e
# Дадайце гэты радок, каб запускаць бэкап штодня ў 2 гадзіны ночы
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1Скрыпт бэкапа базы даных
Стварыце скрыпт для бэкапаў базы даных MySQL:
bash
sudo nano /usr/local/bin/db_backup.sh
#!/bin/bash
BACKUP_DIR="/backups/db"
DB_NAME="your_database"
DB_USER="root"
DB_PASS="your_password"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db_backup_$DATE.sql
gzip $BACKUP_DIR/db_backup_$DATE.sql
find $BACKUP_DIR -name "db_backup_*.sql.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/db_backup.shАддаленае сховішча бэкапаў
Капіруйце бэкапы на аддалены сервер з дапамогай rsync або SCP:
bash
#!/bin/bash
BACKUP_DIR="/backups"
REMOTE_HOST="backup-server.com"
REMOTE_USER="backup"
REMOTE_DIR="/backups"
rsync -avz -e ssh $BACKUP_DIR/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/Палітыка захоўвання бэкапаў
Наладзьце тэрмін захоўвання бэкапаў:
bash
# Захоўваць штодзённыя бэкапы 7 дзён
find /backups -name "backup_*.tar.gz" -mtime +7 -delete
# Захоўваць штотыднёвыя бэкапы 4 тыдні
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete
# Захоўваць штомесячныя бэкапы 12 месяцаў
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -deleteЛепшыя практыкі бэкапа
- Рэгулярна тэстуйце аднаўленне з бэкапа
- Захоўвайце бэкапы ў некалькіх месцах
- Шыфруйце канфідэнцыяльныя даныя бэкапаў
- Маніторце логі бэкапаў на наяўнасць памылак
- Дакументуйце вашы працэдуры бэкапа
- Наладзьце абвесткі аб збоях бэкапа