Réaliser des backups réguliers de vos équipements réseau est essentiel pour garantir la continuité de vos opérations en cas de problème. Voici comment vous pouvez automatiser les backups de vos switches Alcatel depuis une machine Linux en utilisant un script bash.
Le script de backup
Voici le script que vous pouvez utiliser pour automatiser le processus de backup. Ce script se connecte à chaque switch, télécharge le fichier de configuration et le stocke dans un répertoire structuré par l’adresse IP du switch.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
#!/bin/bash # Pour plus d'informations, visitez : laboiteajb.fr # Répertoire de destination pour les backups backup_dir="/home/jb/backup/backup/Alcatel" cd /home/jb/backup/backup # Vérifier si le répertoire est présent if [ ! -d "Alcatel" ]; then # Création du répertoire mkdir Alcatel fi # Tableau des IPs des commutateurs switch_ips=("IP1" "IP2" "IP3" "IP4") switchuser="admin" switchpasswd="switch" # Pour chaque IP de commutateur for switch_ip in ${switch_ips[@]}; do # Récupération du dernier digit de l'IP last_digit=$(echo $switch_ip | awk -F '.' '{print $NF}') # Création du répertoire de backup si nécessaire if [ ! -d "$backup_dir/$last_digit" ]; then mkdir "$backup_dir/$last_digit" fi # Récupération de la date et de l'heure courantes au format AAAAMMJJ-HHMMSS current_date_time=$(date +%Y%m%d-%H%M%S) # Récupération du fichier de backup via wget et enregistrement dans le répertoire de backup # avec un nom de fichier basé sur la date et l'heure courantes echo "Backup du switch $switch_ip" wget -q "ftp://$switchuser:$switchpasswd@$switch_ip//flash/certified/boot.cfg" -O "$backup_dir/$last_digit/$current_date_time-$last_digit.cfg" # Suppression des anciens backups (on conserve les 5 derniers) cd "$backup_dir/$last_digit" ls -t "$backup_dir/$last_digit" | tail -n +6 | xargs rm done |
Explication du script
- Initialisation : Le script commence par définir le répertoire de destination pour les backups. Il vérifie ensuite si ce répertoire existe et le crée si nécessaire.
- Liste des commutateurs : Un tableau contenant les adresses IP des switches à sauvegarder est défini.
- Boucle de backup : Pour chaque IP de commutateur :
- Le script extrait le dernier chiffre de l’IP pour créer un sous-répertoire spécifique à chaque switch.
- Il récupère ensuite la date et l’heure actuelles pour nommer le fichier de backup.
- Le fichier de configuration du switch est téléchargé via wget et enregistré dans le répertoire approprié.
- Les anciens backups sont supprimés, ne conservant que les cinq derniers.
Comment utiliser ce script
Configuration : Modifiez les variables backup_dir, switch_ips, switchuser, et switchpasswd pour correspondre à votre environnement.
Permissions : Assurez-vous que le script est exécutable :
1 |
chmod +x /path/to/your/script.sh |
Planification : Pour automatiser l’exécution du script, ajoutez-le à votre crontab. Par exemple, pour exécuter le script tous les jours à minuit, ajoutez la ligne suivante à votre crontab :
1 |
0 0 * * * /path/to/your/script.sh |
Modifiez votre crontab avec la commande crontab -e.