Script de Sauvegarde
#!/bin/bash
# Définir les variables
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/home/gabe/Téléchargement" # Dossier de destination des sauvegardes
ARCHIVE_NAME="full_backup_$DATE.tar.gz"
EXCLUDES="--exclude=/home/gabe/Téléchargement --exclude=/dev --exclude=/proc --exclude=/sys --exclude=/tmp --exclude=/run --exclude=/mnt --exclude=/media --exclude=/lost+found"
# Créer le dossier de sauvegarde s'il n'existe pas
mkdir -p $BACKUP_DIR
# Créer une archive compressée de l'intégralité du serveur, en excluant les dossiers qui ne doivent pas être sauvegardés
echo "Création de la sauvegarde complète du serveur..."
tar -czvf $BACKUP_DIR/$ARCHIVE_NAME $EXCLUDES /
# Vérifier si la sauvegarde a été créée avec succès
if [ $? -eq 0 ]; then
echo "Sauvegarde complète créée avec succès : $BACKUP_DIR/$ARCHIVE_NAME"
else
echo "Erreur lors de la création de la sauvegarde."
exit 1
fi
# Optionnel : Supprimer les sauvegardes plus anciennes que 7 jours
find $BACKUP_DIR -type f -name "*.tar.gz" -mtime +7 -exec rm {} \;
echo "Nettoyage des anciennes sauvegardes terminé."
Explication du Script
-
Variables :
DATE: Génère une date pour nommer l'archive de sauvegarde de manière unique.BACKUP_DIR: Répertoire où les sauvegardes seront enregistrées (/home/gabe/telechargemen).ARCHIVE_NAME: Nom de l'archive de sauvegarde (full_backup_<date>.tar.gz).EXCLUDES: Liste des répertoires exclus de la sauvegarde pour éviter les fichiers temporaires et dynamiques.
-
Étapes du script :
- Créer le dossier de sauvegarde : Le script crée le répertoire de destination s'il n'existe pas (
mkdir -p). - Créer l'archive compressée : Utilise
tarpour créer une archive compressée de tout le système (/) en excluant les répertoires définis. - Vérifier le succès de la sauvegarde : Le script vérifie si la commande
tara réussi, puis affiche un message approprié. - Nettoyer les anciennes sauvegardes : Supprime les sauvegardes de plus de 7 jours pour éviter de saturer l'espace disque.
- Créer le dossier de sauvegarde : Le script crée le répertoire de destination s'il n'existe pas (
Où Stocker le Script
Il est important de placer le script dans un endroit sécurisé et facilement accessible. Voici quelques suggestions :
1. Dossier Personnel
- Emplacement :
/home/gabe/scripts. - Commandes
-
mkdir -p /home/gabe/scripts mv full_backup_serveur.sh /home/gabe/scripts/ chmod +x /home/gabe/scripts/full_backup_serveur.sh -
- tilisation : Le script peut être exécuté en tapant simplement
full_backup_serveur.sh.
3. Répertoire
/root/- Emplacement :
/root/pour le sécuriser et le rendre accessible uniquement parroot. - Commandes
-
sudo mv full_backup_serveur.sh /root/ sudo chmod +x /root/full_backup_serveur.sh -
Dossier de Sauvegarde
- Emplacement :
/home/gabe/telechargemenpour garder le script avec les sauvegardes. - Commandes :
mv full_backup_serveur.sh /home/gabe/telechargemen/ chmod +x /home/gabe/telechargemen/full_backup_serveur.shLancer le Script
Manuellement
Pour lancer le script manuellement, utilisez la commande suivante :
-
/home/gabe/scripts/full_backup_serveur.sh -
Ou, s'il est dans
/usr/local/bin, vous pouvez simplement taper :full_backup_serveur.shAutomatiser la Sauvegarde avec
cronPour automatiser l'exécution du script, vous pouvez configurer une tâche
cron:-
Ouvrez l'éditeur
cronavec la commande :crontab -e - Ajoutez la ligne suivante pour exécuter le script tous les jours à 2h du matin :
Cela garantira que le serveur est sauvegardé automatiquement tous les jours.0 2 * * * /home/gabe/scripts/full_backup_serveur.sh
-
- Emplacement :
- tilisation : Le script peut être exécuté en tapant simplement
Pas de commentaires