Lokomass Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 (modifié) Bonjour à tous, Je crée une petit suite au topic suivant : Pour résumer un peu, j'ai 2 NAS, 1 principal et 1 backup. Tous les dimanche à minuit le Backup s'allume et au démarrage se lance le petit script suivant qui fait un mirroir du principal. #!/bin/sh ( /usr/syno/bin/synomail SaveBegin rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Azureus/ /volume1/Azureus/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Bms/ /volume1/Bms/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Emule/ /volume1/Emule/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Films/ /volume1/Films/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Jeux/ /volume1/Jeux/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Logiciels/ /volume1/Logiciels/ rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Ma\ Musique/' '/volume1/Ma Musique/' rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Documents/' '/volume1/Mes Documents/' rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Images/' '/volume1/Mes Images/' rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Videos/' '/volume1/Mes Videos/' rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Restauration/ /volume1/Restauration/ rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Series\ TV/' '/volume1/Series TV/' rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Travail/ /volume1/Travail/ rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Virtualisation/ /volume1/Virtualisation/ /usr/syno/bin/synomail SaveOK shutdown -h now ) & Ceci fonctionne parfaitement, donc je reçoit un mail au début et à la fin, le syno s'éteint et puis voilà. J'aimerais perfectionner ce fonctionnement. Premièrement j'aimerais créer un fichier de log qui enregistrera tous les fichiers copiés (uniquement les copiés), qui sera sous la forme : JJMMAA_HHMMSS.log qui sera enregistré sur mon serveur principal dans ce répertoire (on peut imaginer une écriture sur /tmp par exemple puis à la fin une copie vers le NAS principal) : 192.168.100.150:'/volume1/Mes\ Documents/NAS/Synchro/Logs/' Et ensuite, (suite logique) j'aimerai qu'au lieu de m'envoyer juste un mail pour me dire c'est fini, il m'envoi un mail pour me dire c'est fini mais avec en PJ le log crée précédemment. Bon, je sais que j'en demande encore beaucoup, voilà ou j'en suis. Je sais récupérer la date comme je veux : $Today=Date +"%d%m%y_%H%M%S"[/code] Je crois savoir qu'on peut rediriger rsync vers un log comme ceci (syntaxe surement fausse) : [code]rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Azureus/ /volume1/Azureus/ >> /tmp/$Date.log[/code] Faudra écrire à la suite du fichier pour chaque rsync, je sais pas comment ? Ensuite une copie du log sur principal surement avec scp ? Et l'envoi de mail avec nail (faut que j'installe ipkg) ? Ce qui donnerai : [CODE]nail -s "Sauvegarde finie" -a "/tmp/$Date.log" xxxxx@gmail.com"[/code] Bref, je crois avoir le fonctionnement, manque surement la synthaxe mise en place etc. Je remet un bisou en jeu ou quoi ? Merci Modifié le 6 novembre 2011 par Lokomass 0 Citer
cricx Posté(e) le 4 novembre 2011 Posté(e) le 4 novembre 2011 vu le niveau auquel tu es arrivé, il ne te manque pas grand chose pour finir, fais un petit effort ! attention à la $Date , je pense que tu veux dire $Today Pour ajouter à la fin d'un fichier, la syntaxe est effectivement >> fichier (pour créer un nouveau, c'est juste >fichier) pour nail, c'est OK, il faut l'installer via ipkg. pourquoi copier ton fichier de log vers l'autre serveur ? tu peux aussi envoyer directement le résultat de rsync dans le corps du mail : rsync -avz source destination |nail -s "sauvegarde de $Today" adresse@mail 0 Citer
Lokomass Posté(e) le 4 novembre 2011 Auteur Posté(e) le 4 novembre 2011 (modifié) Je te remercie Tu es surement le petit coup de pouce qu'il me manquait. Par contre, ça fait quelques heures que je cherche pour IPKG, j'ai trouvé ce super tuto : http://fredo.serveht...tml/Astu-02.htm Mais y'a aucun fichier, impossible de trouver le sh les serveurs sont tous down.... La copie sur l'autre serveur c'est juste comme ça pour une avoir une trace Modifié le 5 novembre 2011 par Lokomass 0 Citer
Lokomass Posté(e) le 5 novembre 2011 Auteur Posté(e) le 5 novembre 2011 Bon je termine, j'ai réussi en fait Merci à toi pour ton aide. Voici le script modifié. A+ #!/bin/sh ( /usr/syno/bin/synomail SaveBegin Fichier=$(date +"%d%m%y_%H%M%S".log) rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Azureus/ /volume1/Azureus/ > /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Bms/ /volume1/Bms/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Emule/ /volume1/Emule/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Films/ /volume1/Films/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Jeux/ /volume1/Jeux/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Logiciels/ /volume1/Logiciels/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Ma\ Musique/' '/volume1/Ma Musique/' >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Documents/' '/volume1/Mes Documents/' >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Images/' '/volume1/Mes Images/' >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Mes\ Videos/' '/volume1/Mes Videos/' >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Restauration/ /volume1/Restauration/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:'/volume1/Series\ TV/' '/volume1/Series TV/' >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Travail/ /volume1/Travail/ >> /tmp/$Fichier rsync -avz --delete-after -e ssh root@192.168.100.150:/volume1/Virtualisation/ /volume1/Virtualisation/ >> /tmp/$Fichier echo -e "\nSalut beau gosse,\n\nLa sauvegarde du DS409 vers le DS209+ vient tout juste de se finir avec succes.\nToutes mes felicitations.\n\nLokomass\n\n" | nail -s "La sauvegarde est terminee" -a /tmp/$Fichier xxxxxx scp /tmp/$Fichier root@192.168.100.150:"/volume1/Mes\ Documents/NAS/Synchro/Logs/" rm -f /tmp/$Fichier sleep 300 poweroff ) & 0 Citer
Lokomass Posté(e) le 5 novembre 2011 Auteur Posté(e) le 5 novembre 2011 En fait je me suis un peu emballé. Tout fonctionne sauf le mail. Je ne sais pas pourquoi. Si je tape dans le syno les commandes, une à une le mail part bien. Fichier=$(date +"%d%m%y_%H%M%S".log) touch /tmp/$Fichier echo "test" > /tmp/$Fichier echo -e "\nSalut beau gosse,\n\nLa sauvegarde du DS409 vers le DS209+ vient tout juste de se finir avec succes.\nToutes mes felicitations.\n\nLokomass\n\n" | nail -s "La sauvegarde est terminee" -a /tmp/$Fichier xxxxxx Mais la comme ça dans le script il ne l'envoi pas. Comment est-ce possible ? 0 Citer
DjMomo Posté(e) le 5 novembre 2011 Posté(e) le 5 novembre 2011 Nail est-il exécutable depuis n'importe quel dossier ? 0 Citer
Lokomass Posté(e) le 5 novembre 2011 Auteur Posté(e) le 5 novembre 2011 Oui depuis chaque dossier ouais. J'ai également essayé de lancer la commande depuis le dossier /tmp/. C'est d'autant plus perturbant que ça fonctionne à la mano, mais pas dans le script.. 0 Citer
cricx Posté(e) le 5 novembre 2011 Posté(e) le 5 novembre 2011 mets le chemin complet de nail dans le script 0 Citer
Lokomass Posté(e) le 5 novembre 2011 Auteur Posté(e) le 5 novembre 2011 Tu veux dire /opt/bin/nail ? Je tente. 0 Citer
Lokomass Posté(e) le 6 novembre 2011 Auteur Posté(e) le 6 novembre 2011 Magnifique ! Ça marche. Un grand merci 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.