Pol Muller, 2011-03-19 18:49 UTC+0100:
Si l'un d'entre vous a des adresses de bons tutoriaux pour utiliser rsync a travers un réseau local sur une machine distante, je suis preneur ;)
Je n'ai pas de tutoriel, mais des conseils, oui. Il y a deux moyens d'utiliser rsync par réseau. Dans tous les cas, des options utiles de rsync (cf. le manuel rsync(1)) : RSYNC_OPTS="--archive --hard-links --acls --xattrs --delete --fuzzy" Par SSH ======= Il faut rsync sur les deux machines, et ensuite c'est simplement : # rsync $RSYNC_OPTS /truc/bidule/ machine:/var/local/backup/bidule Avec un serveur rsync ===================== Sur la machine distante, il faut lancer un serveur rsync. Cela se fait avec inetd(8), le super-serveur Internet, qui lancera rsync seulement lorsqu'une requête arrivera sur le port concerné. Donc dans /etc/inetd.conf (c'est documenté dans le manuel rsyncd.conf(5)) : rsync stream tcp6 nowait root /usr/bin/rsync rsyncd --daemon Ensuite il faut configurer le serveur rsync, dans /etc/rsyncd.conf. Dans ce fichier au format INI, on définit des « modules », chaque module représentant un service de synchronisation (par exemple, un pour sauvegarder son serveur en lecture-écriture avec identification par mot de passe et un autre public en lecture seule ouvert à tous). Par exemple, moi j'ai mis (Dick, c'est le nom de mon serveur) : use chroot = yes [backupdick] path = /var/local/backups/./dick comment = Sauvegardes de Dick auth users = dick secrets file = /etc/rsyncpassword numeric ids = yes read only = no fake super = yes uid = backup gid = backup Les options sont documentées dans le manuel rsyncd.conf(5), mais la plus intéressante, c'est « fake super ». Cela me permet à rsync de sauvegarder les propriétaires, permissions, ACL et attributs étendus des fichiers sans avoir besoin d'être root sur la machine distante : il stocke tout ça dans des attributs étendus spéciaux (ce qui requiert de monter le système de fichiers cible avec l'option user_xattr). On veut sans doute identifier par utilisateur et mot de passe pour autoriser l'écriture sur ce module rsync, c'est l'objet des options « auth users » et « secrets file ». Il faut créer ce fichier contenant les « utilisateur:mot de passe », bien sûr, et veiller à ne pas qu'il soit lisible par tout le monde. Une fois le serveur rsync configuré et prêt à être lancé par inetd, sur l'autre machine, on peut désormais lancer : # rsync $RSYNC_OPTS /truc/bidule/ rsync://user@machine/module -- . o . Tanguy Ortolo, internaute auto-hébergé . . o <http://www.auto-hebergement.fr/> o o o