Bonjour à toutes et tous,
J'ai fais un script de sauvegarde rsync "over ssh" sur une liste de dossier.
L'architecture : deux NAS synology
Ma commande est lancé avec des variables contenant :
- les options rsync
- les répertoires à exclure
- la source distante (user@host:/repertoire/)
- les redirections vers le fichier de log et le fichier d'erreur
Allez un bout de code
Voici à quoi ressemble la commande en sortie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ip="a.b.c.d" options="-avzr --stats" for filtre in $(cat /backup/lists.excluded) do exclude=$exclude" --exclude='"$filtre"'" done source=/volume1/testbackup devlog=/backup/logs/dev.log errlog=/backup/logs/dev.err echo "rsync" $options $exclude -e \"ssh -i /chemin/id_dsa\" user@$ip:$source /volume1/ rsync $options $exclude -e "ssh -i /chemin/id_dsa" user@$ip:$source /volume1/ > $devlog 2> $errlog
Mon script se lance, et fait ma sauvegarde rsync. ok.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 rsync -avzr --stats --exclude='*.@*/' --exclude='*@*/' --exclude='*.TemporaryItems/' --exclude='*.DS_Store/' -e "ssh -i /chemin/id_dsa" user@192.168.10.15:/volume1/testbackup /v olume1/
Je liste le répertoire, et retrouve les dossiers que je ne voulais pas.
Je fais donc un rm -rf /volume1/testbackup, et je fais un copier/coller de ma commande affichée durant mon script.
Mes filtres ont bien été appliqués...
Des idées peut être ?
Merci à toutes et tous par avance !![]()
Partager