Janvier 13, 2026Guides
Comment configurer des sauvegardes automatiques sur un serveur Linux
Guide étape par étape sur la mise en place de scripts de sauvegarde automatisés à l'aide de tâches cron pour les fichiers et les bases de données.

Des sauvegardes régulières sont essentielles pour protéger vos données. Ce guide vous montre comment configurer des sauvegardes automatiques pour vos fichiers et bases de données à l'aide de scripts shell et de tâches cron sur votre serveur Hiddence.
Création d'un script de sauvegarde
Créez un script de sauvegarde pour vos fichiers :
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.shConfiguration d'une tâche cron
Planifiez des sauvegardes automatiques à l'aide de cron :
bash
sudo crontab -e
# Ajouter cette ligne pour exécuter la sauvegarde tous les jours à 2h du matin
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1Script de sauvegarde de base de données
Créez un script pour les sauvegardes de base de données 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.shStockage de sauvegarde à distance
Copiez les sauvegardes vers un serveur distant à l'aide de rsync ou 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/Politique de rétention des sauvegardes
Configurez la rétention pour conserver les sauvegardes pendant une période spécifique :
bash
# Conserver les sauvegardes quotidiennes pendant 7 jours
find /backups -name "backup_*.tar.gz" -mtime +7 -delete
# Conserver les sauvegardes hebdomadaires pendant 4 semaines
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete
# Conserver les sauvegardes mensuelles pendant 12 mois
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -deleteMeilleures pratiques de sauvegarde
- Testez régulièrement la restauration des sauvegardes
- Stockez les sauvegardes dans plusieurs emplacements
- Chiffrez les données de sauvegarde sensibles
- Surveillez les journaux de sauvegarde pour détecter les erreurs
- Documentez vos procédures de sauvegarde
- Configurez des alertes pour les échecs de sauvegarde