Sausis 13, 2026Vadovai
Kaip sukonfigūruoti automatines atsargines kopijas Linux serveryje
Žingsnis po žingsnio vadovas apie automatinių atsarginių kopijų scenarijų nustatymą naudojant cron užduotis failams ir duomenų bazėms.

Reguliarios atsarginės kopijos yra būtinos jūsų duomenų apsaugai. Šis vadovas parodo, kaip nustatyti automatines atsargines kopijas failams ir duomenų bazėms naudojant shell scenarijus ir cron užduotis jūsų Hiddence serveryje.
Atsarginės kopijos scenarijaus kūrimas
Sukurkite atsarginės kopijos scenarijų savo failams:
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.shCron užduoties nustatymas
Suplanuokite automatines atsargines kopijas naudodami cron:
bash
sudo crontab -e
# Pridėkite šią eilutę, kad atsarginė kopija būtų daroma kasdien 2 val. nakties
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1Duomenų bazės atsarginės kopijos scenarijus
Sukurkite scenarijų MySQL duomenų bazės atsarginėms kopijoms:
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.shNuotolinė atsarginių kopijų saugykla
Nukopijuokite atsargines kopijas į nuotolinį serverį naudodami rsync arba 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/Atsarginių kopijų saugojimo politika
Konfigūruokite saugojimą, kad išlaikytumėte atsargines kopijas tam tikrą laikotarpį:
bash
# Saugoti kasdienes atsargines kopijas 7 dienas
find /backups -name "backup_*.tar.gz" -mtime +7 -delete
# Saugoti kassavaitines atsargines kopijas 4 savaites
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete
# Saugoti kasmėnesines atsargines kopijas 12 mėnesių
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -deleteAtsarginių kopijų geriausios praktikos
- Reguliariai bandykite atsarginių kopijų atkūrimą
- Saugokite atsargines kopijas keliose vietose
- Užšifruokite jautrius atsarginių kopijų duomenis
- Stebėkite atsarginių kopijų žurnalus dėl klaidų
- Dokumentuokite savo atsarginių kopijų procedūras
- Nustatykite įspėjimus apie atsarginių kopijų gedimus