tarte-au-sucre Posté(e) le 30 janvier 2012 Posté(e) le 30 janvier 2012 (modifié) J'ai lu quelques post et je me suis rendu compte que le script que j'ai écrit la semaine dernière était très utile à beaucoup. Le script a été mis en place sur Deux Syno distant, derrière deux FREEBOX en dégroupé (IP publique fixe). Je n'avais qu'un accès distant aux deux syno, via SSH, Web et FTP. Voici un peu la démarche. 1) je sépare le disque de travail du disque de sauvegarde. J'appelerai HOME celui sur lequel je crée une sauvegarde, et BUREAU celui qui doit être sauvegardé. 2) chaque samedi à 1h00 je lance la sauvegarde (CRONTAB) 3) je crée un fichier log sur lequel j'écris les infos 4) je lance rsync entre les dossiers 5) j'envoie un mail au final quand ça a fonctionné (ou pas fonctionné)1 _ ACCES SSH il vous faut un accès SSH sur les deux Syno. La démarche est simple : fixer via le routeur l'adresse du Syno, la sortir de la plage DHCP, router les ports 5000, 21 et 22 vers le Syno. Des deux côtés2_ MISE EN PLACE DES CLEFS PUBLIQUES/PRIVEE Cette partie est nécessaire pour que la sauvegarde soit entièrement automatique. En effet, dans un script, lorsqu'on se connecte à un SSH, il demande TOUJOURS le mot de passe. Du coup.VIA SSH Sur le disque BUREAU, je lance la commande : ssh-keygen -t dsa je récupère ainsi, dans le dossier /root/.ssh une cle privee et une clef publique. ( id_dsa et id_dsa.pub) J'envoie alors la clef publique à HOME (id_dsa.pub) j'inclue ce fichier dans authorized_keys du coup, tentez : connectez vous sur BUREAU en SSH. Lancez la commande ssh root@IP_DU_HOME .... il devrait accepter sans demander de mot de passe. Tant que cette partie ne marche pas, je vous conseille de chercher encore un peu. Il existe pas mal de tutos.3_NAIL (pour ceux qui veulent envoyer un mail à la fin) installez nail en utilisant ipkg install nail si ipkg n'est pas installé, il existe un excellent tuto de fredo dans /OPT/etc/nail.rc ajoutez : smtp= votresmtp.4_mise en place du script voici, il n'y a plus qu'à écrire le script. j'ai mis les commentaire après les # Voici le mien :#!/opt/bin/bash touch log_$(date '+%d-%m-%Y') #création d'un fichier LOG qui permettra d'envoyer le résultat echo "Debut $(date '+%d-%m-%Y')de la sauvegarde" >> log_$(date '+%d-%m-%Y') # message au début du fichier echo "du dossier PUBLIC vers le disque dur HOME" >> log_$(date '+%d-%m-%Y') # idem echo "$(date '+%d-%m-%Y') vers $(date '+%H : %M') > demarrage ..." >> log_$(date '+%d-%m-%Y') #idem rsync --delete -az /volume1/public/testcopy -e ssh root@IP_DU_DISQUE_HOME:/volume1/public/ # la commande ultime ! la ligne suivante vérifie le résultat et ajoute à mon fichier log le résultat if [ $? -eq 0 ] ; then echo "$(date '+%d-%m-%Y') vers $(date '+%H : %M') > sauvegarde reussie ! du disque BUREAU" >> log_$(date '+%d-%m-%Y') else echo "$(date '+%d-%m-%Y')> sauvegarde problematique du disque BUREAU ..." >> log_$(date '+%d-%m-%Y') fi echo " ----- " >> log_$(date '+%d-%m-%Y') nail -s "Sauvegarde terminee" sylvain.germe@gmail.com < log_$(date '+%d-%m-%Y') #j'envoie le fichier log rm -f /volume1/.rsync/log_$(date '+%d-%m-%Y') # je n'ai plus besoin du fichier log Je place ce script dans un dossier que je définis . Pour moi je l'ai mis dans /volume1/@scripts.5_mise en place du crontab modifier le fichier /etc/crontab il existe également plein de tutos là dessus. NB : pensez à relancer le crontab après modifs !!!! Je n'ai pas beaucoup détaillé, mais si besoin, dites le moi Modifié le 16 mars 2013 par tarte-au-sucre 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.