Synchroniser son PC perso avec son compte ESIL

vendredi 5 décembre 2008
par  G a.k.a Gérard Milhaud, Marie Dujardin
popularité : 21%

Vous travaillez souvent sur votre portable, ou votre PC fixe domestique. Vous travaillez aussi sur votre espace disque ESIL. Vous aimeriez bien être capable de synchroniser facilement et rapidement vos données entre ces deux environnements pour travailler sur les mêmes versions de vos documents aussi bien chez vous qu’à l’ESIL : c’est possible, et c’est assez simple.

Sommaire

Retour sommaire


L’outil unison

unison est désormais installé sur le sas d’entrée SSH de l’ESIL. unison est un logiciel libre de synchronisation rapide de répertoires. Ces répertoires peuvent être locaux (sur le même disque, ou d’un disque à un disque USB) ou distants (accès réseau via NFS, SMB ou SSH). C’est cette dernière fonctionnalité qui nous intéresse ici.

Retour sommaire


Introduction rapide à unison

Pour faire rapide, il vous suffit de lancer unison en lui donnant en arguments les deux répertoire à synchroniser. Par exemple, pour synchroniser le répertoire /home/toto/test sur sa machine locale avec le répertoire test à l’ESIL via ssh, voici la commande mode texte (Linux ou Windows), simple :

Pour synchroniser tout son espace esil avec le répertoire local MON_COMPTE_ESIL de sa machine locale, c’est aussi simple :

CHEMIN_HOMEDIR_ESIL</big vaut /filer/personnels/votre_login pour les personnels et /filer/eleves/votre_login pour les étudiants.

Le nom de machine avec lequel vous devez remplacer SAS_SSH_ESIL est indiqué ici (seulement en intranet pour des raisons évidentes de sécurité).

Vous avez donc le choix de lancer plusieurs synchro indépendantes portant sur des répertoires précis (Travail, Loisirs, public_html) ou de tout synchroniser. L’avantage de la première méthode est d’éviter de synchroniser des fichiers inutiles (téléchargements, pièces jointes, dossier poubelle, etc.). L’avantage de la seconde est de ne pas se poser de questions...

Il y a la possibilité de stocker les noms des deux répertoires à synchroniser dans un profil unison, auquel on donne un nom, soit par exemple synchro_test_esil pour le répertoire de l’exemple précédent. Ces profils sont de simples fichiers textes.

Il suffit alors de saisir la commande

pour lancer la synchronisation voulue.

Les versions graphiques permettent de créer automatiquement des profils et de lancer la synchro par double-clic sur le nom du profil.

Pour plus de détails, consultez la documentation officielle en anglais ou celle-ci en français.

Retour sommaire


Scénario de travail typique

  1. Vous travaillez sur votre portable sur un réseau hors ESIL (free, neuf, alice, WIFI université, superFAI.com, etc.), vous modifiez/ajoutez/détruisez des documents dans le répertoire que vous souhaitez synchroniser, soit SYNCHRO.
  2. Vous synchronisez avec l’ESIL.
  3. Vous travaillez à l’ESIL, vous modifiez/ajoutez/détruisez des documents dans le répertoire SYNCHRO.
  4. Vous rallumez plus tard votre portable sur un réseau hors ESIL (free, neuf, alice, WIFI université, NetTropPasCher.arnak, etc.), vous synchronisez avec l’ESIL. Vous modifiez/ajoutez/détruisez des documents dans le répertoire SYNCHRO, etc.

À noter que si vous modifiez un document à la fois sur votre machine locale et sur votre compte ESIL avant de synchroniser, unison vous demandera laquelle des deux versions il doit propager.

Retour sommaire


Aaaarrghh, ça me plaît trop, je le veux DESUITE, comment je fais ???

Il vous suffit d’installer unison sur votre machine personnelle. La seule contrainte est que vous devez avoir la même version que celle installée sur le sas d’entrée SSH de l’ESIL, les versions différentes étant incompatibles. Il s’agit de la version 2.27.57 (qui n’est sans doute pas exactement la même que celle qui viendra via le système de paquetage de votre distribution Linux).

Pour vous faciliter la tâche, j’ai déposé les bons binaires (Linux et Windows... ; pour MacOSX, c’est aussi possible mais comme d’habitude, c’est "think different"...) sur le site de la firme. Il vous suffit de les décompresser quelque part sur votre machine et de les lancer :

Prérequis
- Installation sous Windows

    • La version graphique pour Windows nécessite l’installation de la librairie graphique GTK+ (version 2.12.8-rev-a), voici la page de téléchargement. Installer. Vérifier l’ajout du chemin d’accès au librairies dans la variable d’environnement PATH :
      • Clic-droit sur le poste de travail
      • Propriétés > Avancé > Variables d’environnement
      • Double-clic sur Path dans le cadre Variables système
      • Une fenêtre Modifier la variable système s’ouvre,
      • Dans la zone de texte Valeur de la variable, ajouter à la fin de la ligne si ça n’y figure pas  ;C :\Program Files\Fichiers communs\GTK\2.0\bin (ne pas oublier le point virgule avant le C :\)
    • Télécharger et executer ssh secure shell. RENOMMER C :\Program Files\SSH Communications Security\SSH Secure Shell\ssh2.exe en ssh.exe
    • Télécharger Unison (ci-dessous), enregistrer dans C :\Documents and settings\RépertoirePerso\ ( [1]) Unison.exe n’est pas un programme qui "s’installe" en créant des fichiers et des raccourcis pour en faciliter l’accès. Une fois enregistré et paramétré, il pourra être utile de créer un raccourci sur le bureau (expliqué plus bas)
    • Télécharger plink.exe, enregistrer dans C :\Windows

- Sous Linux GTK+ sera très probablement déjà installée.

Unison
- sources de la version Linux
- binaire de la version graphique pour Linux
- version texte pour Windows
- version graphique pour Windows

Espérant que ce nouveau service facilitera votre vie d’esilien nomade...

Retour sommaire


Mise en œuvre sous Windows en images

Reprenons le scénario ci-dessus dans lequel nous avons, aussi bien sur l’ordinateur personnel de la maison ou bien sur un ordinateur portable hors réseau ESIL que sur l’ordinateur de l’ESIL, un répertoire SYNCHRO. L’objectif est de pouvoir synchroniser ces deux répertoires afin d’avoir de part et d’autre exactement les mêmes documents .

S’ils n’existent pas encore, créer ces répertoires, l’un sur l’ordinateur personnel et l’autre sur Z :\
Avant de lancer la première synchronisation, placer dans ce répertoires les fichiers et dossiers concernés par cette synchronisation.

Pour l’exemple et les illustrations suivantes, le répertoire SYNCHRO est créé selon les chemins suivants :
- en local (i.e. sur l’ordinateur personnel sur lequel Unison va être installé et paramétré)

C :\Documents and Settings\RépertoirePerso\SYNCHRO

- sur l’ordinateur de l’ESIL

Z :\SYNCHRO

installation

- Créer le fichier texte suivant, remplacer yourpassword par son mot de passe, l’enregistrer dans C :\Windows et le renommer pour lui donner l’extension .bat. (dans l’exemple, le fichier est nommé plink-cmd. Il peut s’appeler autrement mais doit avoir l’extension .bat - ce nom est utilisé dans le fichier de configuration indiqué plus bas)

- Lancer l’exécuteur de commande (Démarrer - exécuter)

- Lancer la commande plink : plink votre_login@SAS_SSH_ESIL en remplaçant votre_login par votre login et SAS_SSH_ESIL par le sas d’entrée SSH de l’ESIL

- entrer votre mot de passe lorsqu’il est demandé

s’il est demandé de conserver le mot de passe dans le cache, répondre y pour yes

- Exécuter une première fois Unison (double-clic directement sur l’exécutable) de façon à obtenir la création d’un dossier .unison dans C :\Documents and settings\RépertoirePerso\

MAIS quitter la fenêtre Root selection sans remplir le champ Dir :

- Le dossier .unison est créé et contient un fichier .prf

- Ouvrir ce fichier (.prf) avec un éditeur de texte (clic-droit - ouvrir avec) et y copier / coller le texte ci-dessous en remplaçant les indications par les chemins réels.

#Unison preferences files

root = indiquer ici le chemin complet du répertoire SYNCHRO sur le disque dur local

root = ssh ://votre_login@SAS_SSH_ESIL/indiquer ici le chemin complet du répertoire SYNCHRO sur Z :\, remplacer votre_login par votre login et SAS_SSH_ESIL par le sas d’entrée SSH de l’ESIL

sshcmd=indiquer ici le nom du fichier .bat créé plus haut (plink-cmd.bat dans l’exemple illustré)

- Exécuter le programme (l’exécutable se trouve dans C :\Documents and Settings\RepertoirePerso\ mais il est possible et plus confortable de créer un raccourci sur le Bureau (clic-droit - Envoyer vers - Bureau (créer un raccourci))

- Remplir les champs comme suit

Dans la fenêtre qui s’affiche, cliquer sur le profil default puis valider

Selon la taille du répertoire à synchroniser, le temps d’affichage de la liste sera plus ou moins long.

Un premier affichage (ci-dessus) indique le sens de la synchronisation ainsi que l’opération qui va être effectuée.

Pour lancer l’opération de synchronisation, cliquer sur le bouton Go. Une coche verte s’affiche dans la colonne statut indiquant que la synchronisation a été effectuée.

Retour sommaire



[1il y a une bonne raison : Le premier lancement du programme crée un répertoire .unison dans C :\Documents and settings\RépertoirePerso\ quel que soit l’endroit où est enregistré l’exécutable d’Unison.