Faisons quelques tests avec rsync
Je crée 2 dossiers que je vais tenter de synchroniser
1 dossier laptop dans lequel je crée 3 fichiers, et un dossier desktop vide pour le moment :
$ mkdir laptop desktop
$ cd laptop && touch fichier{1,2,3}
Un rsync dans une direction, on sait que ça marche très bien !
$ rsync -rtv /home/ju/test/laptop/ /home/ju/test/desktop/
-rtv pour respctivement recursive, preserve modification time, verbose
Maintenant je supprime volontairement le fichier 3 (en supposant qu'il ne me soit plus utile) et je relance rsync
$ rm ./laptop/fichier3
$ rsync -rtv /home/ju/test/laptop/ /home/ju/test/desktop/
$ ls ./laptop/
fichier1 fichier2
$ ls ./desktop/
fichier1 fichier2 fichier3
Le fichier supprimé est conservé dans le répertoire de destination, c'est normal il faut ajouter l'option --delete:
$ rsync -rtv --delete /home/ju/test/laptop/ /home/ju/test/desktop/
$ ls ./desktop/
fichier1 fichier2
Jusque là tout va bien.
Maintenant je crée un fichier dans sur mon desktop,
Et je relance la commande
$ touch ./desktop/nouveaufichier
$ rsync -rtv --delete /home/ju/test/laptop/ /home/ju/test/desktop/
sending incremental file list
deleting nouveaufichier
./
Et là c'est le drame je viens de perdre mon nouveaufichier...
$ ls ./laptop/ && ls ./desktop/
fichier1 fichier2
fichier1 fichier2
Voyons ce que ça donne si je tente un rsync "bidirectionel" :
touch ./desktop/nouveaufichier
$ rsync -rtv --delete /home/ju/test/laptop/ /home/ju/test/desktop/ && rsync -rtv --delete /home/ju/test/desktop/ /home/ju/test/laptop/
sending incremental file list
deleting nouveaufichier
./
Évidemment, c'est pareil...
Conclusion : de ce que je maîtrise de rsync (c'est à dire très peu), ça convient très bien pour de la sauvegarde, mais je ne vois pas comment l'utiliser en synchro bidirectionnelle.
J'imagine que des logiciels comme unison ou syncthing ont un genre d'historique du système de fichiers... avec unison je peux bosser un peu sur l'une, un peu sur l'autre machine, de temps en temps je fais une synchro, tout se met à jour (y compris les fichiers supprimés, ou déplacés) et il me dit si il y a un conflit (du genre un fichier modifié de part et d'autre depuis la dernière fois)
madko wrote:Tu as pas un NAS qui pourrait faire intermédiaire ?
Non pas de NAS, uniquement ces 2 machines.
Je ne sais pas comment fonctionne un NAS dans les détails, elle se fait comment la synchro ?