[sh] Script de sauvegarde rsync
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
Code:
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 |
Voici à quoi ressemble la commande en sortie
Code:
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/ |
Mon script se lance, et fait ma sauvegarde rsync. ok.
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 ! ;)