Je transfère énormément de données depuis un serveur à l'autre via ssh
Le principe de base est de ne pas effacer les fichiers de la source lors du transfert
J'ai donc un script qui lance un rsync à intervalle régulier.
Pour éviter de transférer X fois le même fichier je transforme le résultat du log de sortie du rsync en fichier exclude pour le lancement suivant
Une fois géré les problèmes de caractères spéciaux ça fonctionne très bien ... sauf que j'ai encore un soucis avec les répertoires.
En effet il arrive qu'au lancement du script rsync tous les fichiers ne soient pas arrivé dans le répertoire source.
Rsync fait un transfert partiel puis génère un log qui contient le nom du répertoire et des fichiers qu'il a transféré.
Lors du lancement suivant les fichiers sont arrivés sur le serveur source mais non traité par Rsync car dans un répertoire qui se trouve dans le fichier des données à exclure.
Du coup j'ai supprimé dans le fichier exclude toutes les lignes avec les répertoires.
Cela fonctionne mieux mais du coup quand je supprime le dossier de la destination il me le recrée vide à chaque lancement du script.
Quelqu'un a t'il une idée de comment générer cette problématique ?
Merci
---------------
nos utopies d'aujourd'hui sont les réalités de demain.
Publicité
Posté le 26-06-2014 à 15:28:05
l4nkou
Dr House Fan
Posté le 26-06-2014 à 18:54:52
ta remarque :
Pour éviter de transférer X fois le même fichier je transforme le résultat du log de sortie du rsync en fichier exclude pour le lancement suivant
Pourquoi ne pas laisser rsync gérer ça tout seul ?
rsync fait ça tout seul par défaut.
un simple rsync -a devrait suffire à tes besoins.
---------------
Les avis, c'est comme les anus, tout le monde en a un.
axl the mux
Posté le 07-07-2014 à 11:39:15
Bonjour,
Merci de ta réponse mais si je n'utilise pas les exclude je ne peux pas supprimer un fichier de la destination sans qu'il soit retélécharger au prochain lancement ce qui ne convient pas
Message édité par axl the mux le 07-07-2014 à 11:39:35
axl the mux
Posté le 07-07-2014 à 11:39:44
Bonjour,
Merci de ta réponse mais si je n'utilise pas les exclude je ne peux pas supprimer un fichier de la destination sans qu'il soit retéléchargé au prochain lancement ce qui ne convient pas
l4nkou
Dr House Fan
Posté le 07-07-2014 à 16:01:30
tu veux donc garder un fichier sur la source mais pas sur la cible même après rsync ?
Tu ne peux déplacer le fichier qui ne doit plus être synchronisé vers la cible, dans un dossier de la machine source non synchronisé ?
---------------
Les avis, c'est comme les anus, tout le monde en a un.