Grįžti į tinklaraštį
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.

Kaip sukonfigūruoti automatines atsargines kopijas Linux serveryje

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.sh

Cron 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>&1

Duomenų 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.sh

Nuotolinė 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 -delete

Atsarginių 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