1
Synchronisation de 2 dossiers entre 2 serveurs Linux avec Unison.
* Serveur 1:Ubuntu 12.04 avec l’IP 192.0.2.176
* Serveur 2 : Scribe avec l’IP 192.168.2.1 .
(Toutes les commandes sont exécutées avec les droits root)
Tout d’abord, installer ssh et unison sur les deux serveurs :
apt-get install unison openssh-server ssh
Créer une clé publique/privée ssh sur le serveur 1 :
ssh-keygen -t dsa
Il vous sera posé 3 questions, vous pouvez directement valider en appuyant sur Entrée.
Copier la clé publique sur le serveur 2 (en étant toujours sur le serveur) :
ssh-copy-id -i /root/.ssh/id_dsa.pub [email protected]
.
Répondre « Yes » à la première question et entrer le mot de passe root du second
serveur.
Nous allons maintenant faire un essai, créer un fichier dans le répertoire de toto sur le
serveur 1, peu importe le nom que vous lui donné, c’est un essai. .
Une fois ceci effectué synchronisons les deux dossiers de l’utilisateur « toto » par exemple :
unison /var/www/owncloud/data/toto/files ssh ://192.168.2.1//home/t/toto/perso –silent
.
Le “/t” dans notre cas symbolise le dossier contenant tous les utilisateurs commencent
par la lettre « t « .
Après cette manipulation le fichier créé précédemment doit se retrouver dans le fichier
perso de toto sur le serveur 2.
Une fois ceci effectué nous avons réalisé un script pour nous faciliter la tâche et ainsi
exécuter la synchronisation des dossiers utilisateurs automatiquement une fois celui-ci
lancé. .
2
Voici à quoi ressemble le script :
.
Les « if » permettent de ne pas synchroniser les fichiers « index.html », »owncloud.log »
et le dossier « administrateur » qui se trouvent dans le répertoire et que nous ne voulons
pas synchroniser avec owncloud.
Ensuite le script exécute la commande unison pour lancer la synchronisation des deux
dossiers. .
.
Source : http://adrienb.fr/blog/2012/01/03/synchroniser-des-dossiers-entre-deux-serveurs-
linux-avec-unison/