Je prends des sauvegardes d'un serveur avec rsync, mais ces sauvegardes sont assez volumineuses et j'aimerais les compresser. Existe-t-il un moyen d'avoir une sorte de wrapper autour de rsync pour gunzip le fichier dans la sauvegarde, rsync les modifications du fichier live, puis re-gzip le fichier dès qu'il est copié?
Autrement dit , si les fichiers source sur le live sont foo , bar et baz , la sauvegarde a foo.gz , bar.gz et baz.gz .
Pour reformuler: je veux des fichiers compressés à une extrémité et des fichiers non compressés à l'autre extrémité. Je ne veux pas compresser avant la synchronisation, car même avec --rsyncable, cela rend la synchronisation moins efficace. Je connais l'option -z pour rsync. Je n'ai pas d'espace sur la machine de sauvegarde pour stocker tous les fichiers non compressés.
Je pense que la synchronisation avec un système de fichiers monté sur fuseCompress pourrait être la meilleure option. L'histoire du projet mentionne spécifiquement qu'ils améliorent les performances de rsync avec lui.
http://code.google.com/p/fusecompress/
https://github.com/tex/fusecompress/
la source
Vous pouvez écrire un wrapper dans rsync. Si vous «tirez» des données, il n'y a rien de spécial à faire. Si vous voulez «pousser» les données des machines d'origine vers le serveur de sauvegarde, il est plus délicat de les faire fonctionner:
Vous devez d'abord vous assurer que l'encapsuleur est appelé avec le même nom, le même chemin et les mêmes paramètres que le rsync d'origine, au moins pour l'utilisateur sous lequel vous exécutez les sauvegardes.
Deuxièmement, assurez-vous de ne rien écrire sur stdout, car cela gênerait le canal de communication.
Et troisièmement, assurez-vous de passer tous les paramètres que vous obtenez, en les modifiant simplement en fonction de la destination nouvellement non compressée.
la source
Il recherche probablement la compression de transmission de données via rsync, pas la compression de fichiers à l'autre bout.
Consultez: http://jimmyg.org/blog/2007/rsync-basics.html
Paramètres de compression de la page de manuel:
Par défaut, ssh effectue sa propre compression dans une certaine mesure. Je ne sais pas à quel point rsync est meilleur que ssh natif. Si la majorité de vos fichiers sont déjà compressés en fichiers gzip, le mécanisme de compression de rsync ne fera probablement pas grand chose pour vous. Vous ne pouvez presser qu'un fichier autant.
la source