
jlbn
Membres-
Compteur de contenus
128 -
Inscription
-
Dernière visite
Tout ce qui a été posté par jlbn
-
Bon je conclu, Encore une dernière fois, un grand merci à CoolRaoul pour son aide depuis le début de ce sujet. Après moult essais, tâtonnements, et erreurs de ma part, j'ai finalement un script rsync totalement fonctionnel, incluant le script perl de CoolRaoul pour l'envoi de mail. Même si des scripts existaient par ailleurs, je voulais comprendre et faire quelque chose de plus simple que ce que je voyais. jlbn
-
Merci à toi, ça fonctionne, je teste l'envoi d'un fichier en pièce jointe maintenant ça venait bien de moi, mais j'en étais convaincu
-
Pour compléter lorsque je lançe un script comme celui-ci : j'ai message dans le log : les droits du dossier et du fichier script sont en 0755
-
Re bonjour, ci dessous, le résultat du test sur le smtp dsl, je n'arrive toujours pas à sortir une fois la dernière ligne reçu "250 ok" et je ne reçois par ailleurs pas le mail. J'ai donc quitter en fermant putty directement. Par contre, j'ai configuré sur ma messagerie ce smtp sans authentification, et effectivement j'arrive à envoyer des mails. concernant l'autre smtp, je joins le rapport mais je ne pense pas que ce soit le bon smtp à utiliser dans la mesure où il faut une authentification sur celui là il me semble donc que c'est bien un probleme au niveau de l'utilisation du script ou de son installation, je ne doute pas que celui-ci fonctionne parfaitement lorsqu'il est correctement utilisé. Je remet donc ce que j'ai installé : installation du package perl creation du dossire my_sendmail dans usr/local/bin un coup de chmod +x sur le dossier copier/coller de ton script dans un fichier script.sh en prenant garde du retour chariot unix copie du fichier script.sh dans le dossier my_sendmail appel dans mon script de la commande donnée : echo "corps du message" | /usr/local/bin/my_sendmail -s "Sujet" -f "postmaster@mondomaine.com" -m ns0.ovh.net prenom.nom@mondomaine.com Quand je lance mon script, pas de mail dans la boite, pas de message d'erreur, rien... j'y comprends rien merci de ton aide et de ta patience
-
@CoolRaoul Le résultat des commandes que tu m'as demandé, même si je n'ai pas réussi la fin, le smtp semble me laisser passer, je soupçonne donc plutôt une mauvaise manip au niveau de l'installation du script, doit-il avoir un nom particulier dans le dossier my_sendmail ? J'ai sinon installé le paquet perl de synology donc de ce côté là ça doit être bon.
-
mon FAI c'est ovh egalement, et je ne vois pas comment le configurer.
-
Re CoolRaoul, j'ai beau faire des essais, l'envoi de mail passe pas. J'ai un hebergement chez ovh, et j'ai donc mis : dans le dossier my_sendmail, j'ai placé le script my_sendmail.sh et donc en smtp j'ai renseigné le smtp standard d'ovh qu'est-ce que je fais de mal ?
-
Bonjour CoolRaoul, j'ai une fois de plus encore besoins de tes lumières. J'essaye d'utiliser ton script perl mais sans succès. Deux questions : pour le serveur smtp, je ne vois nulle part la possibilité de rentrer un login et mot de passe, j'avoue que ça me surprend et je ne vois donc pas comment utiliser mon smtp gmail. il me semble qu'il y a dans ton script la possibilité d'utiliser un fichier comme corps du message, peux-tu me dire comment on l'utilise ? du coup ça doit faire doublon avec le début du code "corps du message" ? merci d'avance
-
merci une fois de plus coolraoul
-
Bonsoir, Je lâche rien et je poursuis dans ma quête d'un script fonctionnel pour mes besoins. Le script pour le moment : #!/bin/sh PATH=/bin:/usr/bin:/usr/syno/bin #Déclaration des variables date=`date +%y_%m_%d` LOG=/volume1/Backup/rsync/log EXCLURE=/volume1/Backup/rsync/exclure.txt SOURCE=/volume1/ DEST=/volume1/backup/jlbn/ BACKUP=/volume1/backup/fichiers_suppr SERVEUR=ip du serveur PORT=5555 RETENTION=5 #Ecriture dans le log de la date et heure de lançement echo "" > $LOG/$date.log echo "========================================================================================================================" >> $LOG/$date.log echo "Lancement de la sauvegarde le $(date +%A) $(date +%d) $(date +% $(date +%Y) à $(date +%H)h et $(date +%M)min" >> $LOG/$date.log #Lancement de la sauvegarde rsync -arv --partial --stats --delete --backup -e "ssh -p $PORT -i /root/.ssh/id_dsa" --backup-dir=$BACKUP/$date/ --exclude-from=$EXCLURE $SOURCE $SERVEUR:$DEST >> $LOG/$date.log #Supression du dossier de rétention le plus ancien selon la variable RETENTION définie en jours à tester plus tard #ssh $SERVEUR "cd '$BACKUP' && find . -type d -maxdepth 1 -mindepth 1 -mtime +'$RETENTION' | xargs rm -r" # Ecriture de la date et de l'heure de fin de la sauvegarde echo "" >> $LOG/$date.log echo "-----------------------------------------------------------------" >> $LOG/$date.log echo "Fin de la sauvegarde le $(date +%A) $(date +%d) $(date +% $(date +%Y) à $(date +%H)h et $(date +%M)min" >> $LOG/$date.log echo "========================================================================================================================" >> $LOG/$date.log echo >> $LOG/$date.log # Envoi du mail mail -s "sauvegarde vers maison" "$mail" < $LOG/$date.log exit tout fonctionne sauf l'envoi de mail à la fin, si vous pouvez m'aider merci beaucoup
-
ok, je testerais demain alors en fixant le paramètre à 1 effectivement, j'avais crée des dossiers bidons. je te tiens au courant merci encore
-
Bon en fait la commande passe, mais rien ne se passe. Je vais encore abuser et expliquer ce que je souhaite : je conserve sur le serveur cible les fichiers supprimés de la source dans des dossiers datés du jour : 14-02-28 : dossier sur le serveur cible où sont localisés les fichiers supprimés de la source détectés lors de la sauvegarde du 28 14-02-27 : dossier sur le serveur cible où sont localisés les fichiers supprimés de la source détectés lors de la sauvegarde du 27 etc.... 14-02-24 : dossier sur le serveur cible où sont localisés les fichiers supprimés de la source détectés lors de la sauvegarde du 24 je fixe un nombre de jours de rétention de ces dossiers dans une variable RETENTION=5 avec ce paramètre, ça me permet de supprimer le dossier du 24 éventuellement, si le dossier est inexistant, et bien on envoie un message d'avertissement. Pour faire ça peut-etre faut-il changer la structure des dossiers. merci de votre aide (surtout de CoolRaoul depuis le début)
-
oui ssh est désactivé et la commande ne fonctionne pas (permission denied), par contre en l'activant ça passe. merci encore
-
par contre, j'ai mal dû m'exprimer le dossier à supprimer est sur le serveur cible, donc pas en local, du coup, le code proposé ne doit pas fonctionner ?
-
le résultat dans le fichier log : pourtant le dossier existe bien sur la cible....
-
je continue et j'avance, ci dessus le code que j'utilise : #!/bin/sh PATH=/bin:/usr/bin:/usr/syno/bin #Déclaration des variables date=`date +%y_%m_%d` LOG=/volume1/Backup/rsync/log EXCLURE=/volume1/Backup/rsync/exclure.txt SOURCE=/volume1/Backup/jlbn DEST=/volume1/backup/test/ BACKUP=/volume1/backup/test/fichiers_suppr SERVEUR=root@111.222.222.222 #Fichier de log pour le suivi [ -t 0 ] || exec >$LOG/$date.log 2>&1 #Lancement de la sauvegarde rsync -av --stats --delete --backup -e "ssh -p 5555 -i /dir/.ssh/id_dsa" --backup-dir=$BACKUP/$date/ --exclude-from=$EXCLURE #j'ai pas essayé mais ça doit fonctionner $SOURCE $SERVEUR:$DEST #Supression du repertoire de sauvegarde des fichiers supprimés dans la source de plus de 5 jours : ça marche pas supprdossier= ls $BACKUP | head -n5 mv $supprdossier poubelle/ #Envoi d'un mail avec heure de début et fin et fichier de log à realiser exit Ce qui marche : fichier de log ok sauvegarde ok sauvegarde des fichiers supprimés dans la source dans un dossier date sur la cible : ok Ce qui marche pas : suppr du dossier date de plus de 5 jours Ce qui n'est pas fait : envoi du mail si vous pouvez m'aider un peu ou m'aiguiler merci d'avance
-
merci pour tes conseils et précisions à nouveau, j'ai déjà mis des règles dans le pare feu en n'autorisant que des ip locales et l'adresse ip du syno source, celle-ci étant fixe. J'ai par ailleurs modifié le port par défaut pour le ssh, et activé le blocage auto. Je pense donc être tranquille. Je continue mes essais maintenant pour aboutir à un script fonctionnel et qui me convienne.
-
Bon j'avance, j'ai généré la clé et lancé un script vers mon syno distant et ça fonctionne Quelques questions : j'ai généré la clé avec l'utilisateur root, y-a-t-il un risque ? même après avoir désactivé la connexion ssh dans terminal sur les 2 synos, le script fonctionne, c'est normal ? Par contre, lorsque j'essaye de me connecter avec putty, ça passe pas.
-
je ne cherche pas à faire une synchro, mais une sauvegarde entre mon syno chez moi et un autre localisé chez un copain. J'ai dèjà mis en place une sauvegarde via l'outil sauvegarder et restaurer en ssh et ça fonctionne, mais je souhaiterais pouvoir personnaliser un peu plus la sauvegarde (copie dans un dossier daté du jour des fichiers supprimés sur la source par exemple), avoir un log de suivi, etc.... je comprends en tout cas qu'il faut passer par la génération de clés ssh pour pouvoir faire ça en rsync, donc je vais suivre ton conseil et chercher des tutos clairs pour faire ça sur mon syno. merci en tout cas pour tes conseils
-
Bon , je fais des essais en local, ça me permet de comprendre mieux les commandes petit à petit, pas de soucis. Par contre, si je veux faire la même chose vers mon syno distant en ssh, j'ai ce message d'erreur : Peut-on insérer le mot de passe dans le script ? Sinon, il faut faire une manip avec les clé ssh, mais là je suis un peu perdu sur la manip : à partir de quel serveur ? comment ? Merci de votre aide
-
ça fonctionne c'était le format des sauts de ligne qui ne convenait pas. merci beaucoup, je peux faire des essais maintenant a+
-
Désolé je dois être un boulet, mais je fais ça où ? avec putty ? j'ai essayé, ça change rien, rien ne se passe. C'est peut être la façon de faire ce fichier de script qui est mauvaise pour moi, je crée le fichier avec notepad++. Suis un peu perdu à vrai dire
-
Merci CoolRaoul, J'ai ajouté ces deux lignes dans le script et ça fonctionne quand je met le script complet dans la fenêtre du planificateur de tâches. par contre, j'ai mis donc ça : #!/bin/sh PATH=/bin:/usr/bin:/usr/syno/bin [ -t 0 ] || exec >/volume1/Backup/rsync/journal.log 2>&1 rsync -av /volume1/Backup/jlbn /volume1/Backup/rsync/ Dans un fichier texte nommé script.sh. Quand je l'appelle via le planificateur en indiquant l'emplacement de ce fichier (/volume1/Backup/rsync/script.sh), rien ne se passe. Faut -il placer ce fichier dans un endroit particulier ?
-
bon en fait c'est l'appel de ce script logé dans un fichier script.sh qui ne fonctionne pas, ce fichier doit-il être placé dans un endroit particulier ?
-
Bonjour à tous, j'essaye de me créer mon propre script afin d'avoir notamment des fichiers de log détaillé et un plus grand contrôle. Lorsque je teste une simple commande : #!/bin/sh rsync -av /volume1/Backup/dossier1 /volume1/Backup/dossier2/ en créant un fichier script sh et en le lançant à la main dans le planificateur de tache, et bien rien ne se passe. Pour moi cette commande devrait copier le contenu de dossier1 dans dossier2 ça commence bien ! la finalité étant de copier mon volume 1 de mon nas principal vers un dossier de mon nas secondaire qui est sur un site distant en ssh. Je précise que la sauvegarde via l'outil intégré fonctionne bien et que j'ai procédé à la modif du port ssh par défaut en modifiant le fichier ssh_config. En résumé, je suis pas arrivé ! merci