Bonjour bonjour…
Voilà mon souci : j’ai une tâche planifiée pour synchroniser des fichiers entre 2 répertoires.
dans les paramètres j’ai demandé que Syno m’envoie un mail par le SMTP de Google quand le script a été exécuté.
Et ça marche, sauf que il y a beaucoup de fichiers et qu’il me balance la liste intégrale des fichiers sur la source et la destination ce qui fait un mail interminable.
Donc je souhaite l’améliorer en lui demandant de me rendre compte SEULEMENT des fichiers qui ont été copiés et ceux supprimés.
J’ai donc fait un nouveau script :
Bon ça fait le job quant à la synchro, par contre le mail me dit :
Si vous avez une idée pour me sortir de là…
Voilà mon souci : j’ai une tâche planifiée pour synchroniser des fichiers entre 2 répertoires.
Code:
#!/bin/bash
source="/volume1/temp/Standby"
destination="/volume1/temp/LeBlanc/SauvMyCloud/SAUVStandby/"
rsync -av --delete --ignore-existing "$source" "$destination"
Et ça marche, sauf que il y a beaucoup de fichiers et qu’il me balance la liste intégrale des fichiers sur la source et la destination ce qui fait un mail interminable.
Donc je souhaite l’améliorer en lui demandant de me rendre compte SEULEMENT des fichiers qui ont été copiés et ceux supprimés.
J’ai donc fait un nouveau script :
Code:
#!/bin/bash
source="/volume1/temp/Standby"
destination="/volume1/temp/LeBlanc/SauvMyCloud/SAUVStandby/"
# Fichiers journaux pour les fichiers supprimés et copiés
log_suppr="/tmp/rsync_suppr.log"
log_copies="/tmp/rsync_copies.log"
# Exécution de rsync avec redirection des sorties
rsync -av --delete --ignore-existing "$source" "$destination" \
--log-file="$log_copies" --itemize-changes >> "$log_suppr" 2>&1
# Lecture des fichiers journaux
suppr=$(cat "$log_suppr")
copies=$(cat "$log_copies")
# Envoi de l'email
sujet="Rapport de sauvegarde Standby"
message="Voici le rapport de la sauvegarde Standby :\n\nFichiers supprimés :\n$suppr\n\nFichiers copiés :\n$copies"
echo "$message" | mail -s "$sujet" sven@gmail.com
# Suppression des fichiers journaux temporaires (facultatif)
rm "$log_suppr" "$log_copies"
J’ai pourtant Synology Mail Server d’installé et paramétré pour utiliser en relais le SMTP de Google, mais non : la tâche ne l’utilise pas.sh: line 21: mail: command not found
Si vous avez une idée pour me sortir de là…