Synchro

De Mediase3
Aller à : Navigation, rechercher
Retour chapitre en cours : X. Les modules optionnels

Sommaire

Le module de synchronisation de fichiers

présentation

Ce module optionnel permet d'accéder à distance aux répertoires "mes documents" (K:\Docs), ainsi qu'aux répertoires classes ainsi qu'aux groupes de projets ( dossiers Classe_grp_xxx. Etant donné qu'un accès à distance au partages du serveur SE3 serait très lent et surtout poserait de gros problèmes de sécurité, la solution choisie consiste à utiliser un outil de synchronisation extrèmement puissant  : Unison. cet outil permet de synchroniser des données soit entre deux dossiers, par exemple entre un disque interne et un disque externe, soit via le réseau, qu'il soit interne ou externe.

Les données du serveur seront donc dupliquées sur votre ordinateur ou disque externe, ce qui permettra d'y accéder hors connexion avec des performances optimales, au prix bien sûr d'une occupation disque. A chaque lancement ( manuel ou automatique ), Unison synchronisera les données entre votre disque et le serveur du lycée. La méthode de transfert étant très performante, cette opération ne prendra que quelques secondes en accès local ( reseau ou disque ), et bien sûr un peu plus longtemps en accès distant par ADSL.

utilisation

Synchro.png

Activation de la synchro

L'activation se fait sur la page web du serveur se3, à l'adresse suivante : par défaut http://se3:909/unison/synchro.php (ou l'adresse réelle de votre serveur : http://nom_du_serveur:909/synchro.php) Vous devrez vous identifier avec vos identifiants se3

Clipboard02.png

Cliquer sur le bouton activer la synchronisation : cela va générer un installeur pour Windows (XP->Seven) dans K:\Docs, unison_votre.nom.zip.

Clipboard03.png Clipboard04.png Clipboard05.png

Installation du logiciel ( pour les utilisateurs )

Ordinateur portable ( ou fixe, si on a récupéré le logiciel sur une clef usb au préalable)

On installe Unison dans program files (pour XP, pour Seven cela ne marche pas, voir plus bas !), et on fait un raccourci sur le bureau :

Se Connecter \\se3\mon.nom, aller dans le répertoire courant, et extraire l'archive unison_mon.nom.zip, et lancer setup.exe : choisir les répertoires :

  • c:\Program files pour l'installation ( ou c:\Users\Bidule\Applications pour Seven )
  • Bureau pour le raccourci
  • Mes Documents\Lycee pour les fichiers ATTENTION ! parfois les noms de répertoires avec des espaces (a vérifier) et des accents (à coup sûr) posent problème. Si c'est le cas, recommencer la procédure d'installation en choisissant un répertoire sans accents pour mettre les documents

Clipboard07.png Clipboard08.png Clipboard09.png

L'installeur va copier les fichiers dans c:\program files\unison, et ajouter un lien sur le bureau.

Clipboard10.png

En cliquant sur ce lien, la synchro doit démarrer... Il est possible qu'une fenetre noire vous demande de confirmer la clé du serveur, taper sur la touche Entrée, et cela démarre...

Note : sur seven, si UAC est activé, vous allez devoir cliquer sur une demi-douzaine de messages d'avertissement avant que l'installation ne se fasse... de plus l'installation dans program files risque d'échouer. Dans ce cas installez ailleurs ! Le plus simple : creer un répertoire Applications dans votre dossier perso (c:\Users\Bidule\Applications)

Synchro initiale

A faire impérativement en étant connecté en filaire !

Cliquer sur l'icone synchro, la copie des ficihers va démarrer après un temps assez long, le temps que le serveur indexe les ficihers à copier. Il est possible que la synchro échoue, dans ce cas recommencer jusqu'à ce qu'elle se termine. Cela peut être long si on synchronise beaucoup de classes !

Une fois cette synchro initiale terminée, les suivantes seront très rapides.

A ce stade vous avez sur votre portable un dossier Lycee ( ou le nom que vous avez choisi ) qui contient les dossiers :

  • Docs\ : mes documents sur le serveur : (k:\Docs)
  • Classes\ : contient votre(vos) classe(s) ( au choix avec ou sans les élèves pour les profs ) Attention ! pour les profs cela peut faire beaucoup de données
  • Groupes\ : contient les dossiers Classe_grp_xxx, qui correspondent à vos groupes de projets si ils existent

Si vous avez activé les dossiers _echange dans les classes ou les groupes, ceux-ci seront synchronisés. Si ensuite ceux-ci sont désactivés, la synchro ne se fera pas mais les données locales seront préservées.

Synchros suivantes

Elles peuvent se faire à la maison, en wifi...

Lancer la synchro à l'allumage du PC, travailler normalement, en fin de travail cliquer sur "rescan" et "go" pour mettre à jour sur le serveur les modifs.

Il n'est pas nécessaire de fermer l'application unison quand on travaille, mais la fermer ne pose pas de problèmes non plus... Il est également possible de configurer Unison pour que la synchro se fasse en tâche de fond, toutes les x minutes... Voir la doc !

Clipboard11.png

Ordinateur fixe (disque externe USB)

Dans ce cas, il est nécessaire de transférer les fichiers en passant par un disque externe, car faire la synchro directement par internet serait beaucoup trop lent. Deux options sont possibles :

  • laisser les fichiers sur le disque externe : on travaillera directement dessus à domicile. Ceci obligera donc à laiser le disque branché pour bosser.
  • faire la synchro initiale entre l'ordinateur fixe et le disque externe : les données sont sur le fixe, et donc pas besoin de laisser branché le disque, les synchros suivantes peuvent se faire par internet

On peut combiner les deux stratégies selon le volumes de données à transférer...

installation sur le disque externe

Dans les deux cas, on installe Unison sur le disque amovible, et on fait un raccourci sur le bureau :

Se Connecter \\se3\mon.nom, aller dans le répertoire courant, copier l'archive unison_mon.nom.zip sur le disque amovible et extraire l'archive, et lancer setup.exe :

choisir les répertoires :

  • E:\ (ou la lettre du lecteur amovible) pour l'installation
  • E:\ (ou la lettre du lecteur amovible) pour le raccourci
  • E:\ (ou la lettre du lecteur amovible\Lycee pour les fichiers

Clipboard07.png Clipboard08.png Clipboard09.png

L'installeur va copier les fichiers dans E:\unison, et ajouter un lien sur E:\ Attention, ce lien correspond à la synchro via le réseau, et donc ne doit pas être utilisé tout de suite...

installation sur le fixe

installer unison sur le fixe ( voir la procédure pour un portable )

Synchro initiale

  • brancher le disque externe sur un poste de travail,
  • lancer E:\unison\synchro_lycee-disque.bat (ou le lien)

La copie des fichiers va démarrer après un temps assez long, le temps que le serveur indexe les fichiers à copier. Il est possible que la synchro échoue, dans ce cas recommencer jusqu'à ce qu'elle se termine. Cela peut être long si on synchronise beaucoup de classes ! Une fois cette synchro initiale terminée, les suivantes seront très rapides.

  • brancher le disque sur le poste fixe à synchroniser
  • lancer c:\program files\unison\synchro_disque-portable.bat ( la version installée sur le poste fixe )

Synchros suivantes

Elles peuvent se faire via internet, ou alors via le disque externe si le volume est important ( par exemple si une classe a été ajoutée...)

Lancer la synchro à l'allumage du PC, travailler normalement, en fin de travail cliquer sur "rescan" pour mettre à jour sur le serveur les modifs.

Il n'est pas nécessaire de fermer l'application unison quand on travaille, mais la fermer ne pose pas de problèmes non plus...

Clipboard11.png

Conflits

Si un ficher a été modifié sur le serveur et sur le portable entre deux synchronisations, il apparait en conflit. Dans ce cas, il ne sera pas synchronisé automatiquement. Dans ce cas réfléchissez, ouvrez les 2 versions, comparez, et indiquez à unison le sens de synchro ( quelle version conserver ).

Dangers

Outre les conflits le principal danger est d'oublier que la synchro est bidirectionnelle, y compris à la suppression : si vous supprimez un fichier ou un dossier sur votre portable il sera supprimé sur le serveur !

Si vous ne souhaitez plus avoir un dossier hors connexion sur votre portable (pb de place...) NE LE SUPPRIMEZ JAMAIS !!!! désactivez la synchro sur le serveur : voir le chapitre Synchro#D.C3.A9sactiver_un_dossier

Desactivation de la synchro

Toutes les opérations sont à faire depuis l'interface SE3. Ne jamais supprimer de dossiers !

Interdire la connexion

En cas de doute sur la sécurité (Disque ou ordinateur perdu ou volé...) Il suffit de cliquer à nouveau sur activer la synchronisation pour générer une nouvelle archive et changer les clés du serveur. Toute connexion avec les anciennes clés est impossible.

Désactiver un dossier

Cliquer sur le bouton desactiver du dossier correspondant dans l'interface se3.

Attention ! Le dossier sera effacé de votre ordinateur portable ou disque externe lors de la prochaine synchro !

Pour aller plus loin

Unison permet beaucoup d'autres choses : on peut le configurer pour qu'il synchronise automatiquement en tâche de fond toutes les x minutes, et donc le lancer au démarrage du pc, on peut lui faire résoudre automatiquement lers conflits... Il est aussi très simple de l'utilisezr pour autre chose, par exemple synchroniser des collections de mp3 ou de phoots entre deux disques ou ordinateurs. La doc est bien faite, mais en anglais !

Pour info, les fichiers de configuration sont dans le dossier conf du répertoire d'installation et ont l'extension .prf. Ce sont des fichiers textes, On peut aussi les modifier directement depuis l'interface unison.

Clients Linux ou Mac

installez le paquet unison-2.40.16 de votre distribution préférée,

Pour ubuntu il faut ajouter le dépôt suivant :

ppa:groetschel/ppa


puis copiez le contenu du répertoire unison/conf de l'archive zip dans votre home :

cp -r conf/.ssh ~/
mkdir -p .unison
cp conf/*.prf .unison

adapter ensuite les profils et scripts à vos besoins...

Installation et configuration du module ( pour les administrateurs du serveur uniquement )

Installation du module

pour le moment en ligne de commande dans un terminal :

apt-get install se3-synchro

Autorisation des utilisateurs

Par défaut seuls les profs et les admins ont accès à l'interface. Il est possible de donner le droit aux élèves, il suffit pour cela de leur donner le droit unison_users dans l'interface.

Note : Ce droit ne concerne que l'interface. En pratique si l'utilisateur a déjà configuré sa synchro, elle continuera à fonctionner même si on lui retire le droit. Pour lui interdire, il suffit de lui mettre son shell à /bin/true, ou de supprimer le répertoire .ssh dans son home.

Configuration DNS et firewall

DNS

Pour fonctionner correctement, il faut impérativement que le nom du serveur soit le même sur le réseau interne et externe.

Plusieurs solutions sont possibles :

  • 1- vous avez le contrôle des 2 dns (externe et interne) : dans ce cas créez
    • un alias (enregistrement A) nommé synchro pointant vers votre nom dns : www.etablissement.ac-truc.fr. sur le dns externe
    • un alias (enregistrement A) nommé synchro pointant vers votre nom du se3 : se3.etablissement.ac-truc.fr. sur le dns interne

de cette façon synchro.etablissement.ac-truc.fr:22222 pointera toujours vers le se3

  • 2- vous n'avez pas le contrôle du dns externe : dans ce cas il faut configurer le dns interne pour que le nom dns externe (www.etablissement.ac-truc.fr) soit bien résolu vers le serveur accessible de l'extérieur ( c'est normalement déjà le cas ), et il faudra ajouter une règle supplémentaire sur le firewall. Cette config n'est pas optimale, mais cela doit fonctionner.

Dans les deux cas, vous pouvez modifier le nom du serveur de synchronisation dans la page setup http://se3:909/setup en modifiant le parametre unison_name.

Attention, ceci implique que les utilisateurs régénèrent l'installeur et le réinstallent ( ou alors modifient le fichier conf/lycee.prf sur leur installation pour mettre le nouveau nom du serveur)

Firewall

  • il rediriger le trafic venant de l'extérieur et à destination du port 22222 vers se3 port 22222 (DNAT).
  • dans le cas 2, il faut également faire un forward du trafic issu du réseau pédagogique et à destination du port 22222 vers se3:22222

Sécurité

L'ouverture sur l'extérieur se fait sur un serveur ssh dédié sur le port 22222. Ce serveur n'accepte que l'authentification par clés RSA. La sécurité est donc bonne, du moment que la clé générée pour l'utilisateur dans le paquet reste privée...

A noter qu'il suffit à l'utilisateur de refaire l'activation pour changer de clés en cas de perte ou de vol.

Les utilisateurs doivent disposer d'un shell pour pouvoir se connecter. Par défaut, on n'active celui-ci que lors de l'activation de la synchro pour l'utilisateur. Il est possible (>=Squeeze) d'installer un shell réduit scponly ( paquet scponly-full ), qui évite de donner un accès shell aux utilisateurs. Mais dans ce cas il n'est plus possible d'avoir de clients Linux... Il faut donc faire un choix :

  • scponly : meilleure sécurité, mais pas de clients linux,
  • bash : clients linux, mais acces shell depuis l'extérieur.

Le serveur ssh n'est pas chrooté, et donc les utilisateurs peuvent potentiellement remonter dans toute l'arborescence (attention aux droits!)

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Support
Téléchargements
Développement
Outils logiciels
Boîte à outils