Bonjour à tous!!
Je cherche à faire un script utilisant rsync et ssh afin de faire un backup régulier que je veux insérer dans une crontab.
Ce script sauvegarderait les données d'un répertoire nommé "partage" sur un serveur vers un deuxième serveur.
Le problème, c'est que je ne m'y connais pas du tout en script.
Si quelqu'un peut m'aider, ce serait super cool!!!
Merci à vous...
# Hmm
Posté par schee . Évalué à 1.
il suffit d'un rsync source destination
la source et la destination peuvent chacune comporter juste un chemin local ou une machine distante:chemin distant.
Ensuite, pour ton backup il suffit de quelque chose comme :
que tu fais tourner dans ton cron une fois par jour ?
# je commence
Posté par mathieu mathieu (site web personnel) . Évalué à 3.
RsyncSrc=login@serveur:/pathSrc
RsyncDst=/pathDest
rsync --partial -r -h --bwlimit=2000 -e "ssh -i $keyfile" $RsyncSrc $RsyncDst && exit 0
ceci va copier les nouveaux fichiers vers la cible par ssh.
L'auth par clé permet de ne pas mettre de mot de passe ...
L'option bwlimit permet de ne pas saturer le serveur qui n'est pas une bete de course.
[^] # Re: je commence
Posté par B. franck . Évalué à 2.
histoire de ne pas se faire avoir par des points de montages (x)
et le mode archive (a) qui préserve les flags.
[^] # Re: je commence
Posté par lelo . Évalué à 1.
Et je sais que je suis embêtant, mais la clé publique doit être de quel côté, serveur à sauvegarder, ou l'autre?
Encore merci...
[^] # Re: je commence
Posté par schee . Évalué à 1.
Sur le serveur, tu dois avoir un fichier ~/.ssh/authorized_keys qui contient la clef publique correspondant à la clef privée (il suffit de créer le fichier s'il n'existe pas et/ou de lui ajouter une ligne avec le contenu du fichier ~/.ssh/id_rsa.pub de la machine locale).
[^] # Re: je commence
Posté par schee . Évalué à 2.
Quant au "ssh -i $keyfile", il me semble plus propre de configurer SSH au besoin dans le fichier .ssh/config (au moins le chemin vers la keyfile ne se verra pas dans un "ps", par exemple), simplement :
Le -h est aussi inutile, si c'est pour être exécuté par cron ça ne sert pas à grand chose d'utiliser un format de sortie plus lisible par les humains.
# rsnapshot
Posté par Steve Azriel . Évalué à 2.
Une petite alternative (merci Linux Mag ^__^):
rsnapshot [http://www.rsnapshot.org/]
C'est tout prêt, il n'y a plus qu'à (j'adore cette phrase) paramétrer :-)
Bon courage !
Cdlt,
[^] # re script
Posté par lelo . Évalué à 1.
En numéro 1, je voudrais savoir si la syntaxe d'une commande en script est la même que dans un terminal.
En numéro 2, voici un script que j'ai écrit (les commandes marchent dans un terminal):
#!/bin/bash
ssh root@ip_du_serveur
rsync -azv chemin/répertoire_à_sauver ip_du_serveur:/chemin/répertoire de sauvegarde
le but est de sauvegarder les fichiers dur un serveur distant.
Est-ce que mon script est bon? Si oui, comment faire pour l'executer?Si non, comment le corriger?
Merci de votre aide....
[^] # Re: re script
Posté par lelo . Évalué à 1.
A bientôt...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.