Synergy : Multi screens avec plusieurs ordinateurs

From Deimos.fr / Bloc Notes Informatique
Jump to: navigation, search
Synergy

Software version 1.3
Operating System Debian 6
Mac OS 10.5+
Website Synergy Website
Last Update 07/11/2012
Others

1 Introduction

Synergy vous permet de partager facilement votre souris et votre clavier entre plusieurs ordinateurs. Il est libre et Open Source. Il suffit de déplacer la souris d'un ordinateur à l'autre en passant par leurs bords, comme pour passer d'un écran à l'autre en multi-écran. Vous pouvez même partager les presse-papiers (copier-coller). Tout ce qu'il faut est une connexion réseau. Synergy est multi-plateforme (fonctionne sur Windows, Mac OS X et Linux).

Synergy schema.jpg

2 Installation

Choisissez le type d'installation en fonction de votre OS

2.1 Mac

Téléchargez le DMG, puis copier les binaires dans /usr/local/bin/. Placez vous dans le dossier contenant les binaires et exécutez cette commande :

Command
sudo cp ./synergyc ./synergys /usr/local/bin/synergyc
mkdir -p ~/Library/synergy
cp synergy.conf ~/Library/synergy

Voilà, c'est maintenant installé :-)

2.2 Windows

Téléchargez l'installateur et lancez simplement l'installation.

2.3 Linux

Allez hop, comme dab :

Command
aptitude install synergy

3 Configuration

La configuration peut sembler complexe, mais elle ne l'est pas. Il suffit de rester logique. Nous n'allons pas voir ici comment configurer sous Windows, car tout se fait avec des clics, et c'est vraiment simple. Nous allons prendre la partie Mac/Unix.

3.1 Le serveur

3.1.1 Mac

C'est le serveur qui va déterminer ce que telle ou telle machine va faire. Pour les clients, il n'y a aucuns fichiers de configuration, tout est dans le serveur. Je vais prendre ici un fichier de configuration typique et l'expliquer. Mais tout d'abord, il y a une chose importante à comprendre.

Warning WARNING
Les noms à insérer dans le fichier de configuration correspondent au nom des machines OU au DNS de celles-ci

Pour éditer le fichier de configuration :

Configuration File ~/Library/synergy/synergy.conf
section: screens 
    water:  
    earth:  
end
 
section: links
    water:  
        left = earth 
    earth:  
        right  = water 
end
 
section: aliases 
    water:  
        water.deimos.fr
    earth:  
        earth.deimos.fr
 end

Ici, water correspond à la machine serveur, et earth à la machine cliente. Dans la section screens, il faut déclarer toutes les machines. Ici j'en ai que 2 (le serveur + le client).

Ensuite, on déclare avec links comment les côtés des écrans doivent inter réagir. Ici, earth est à la gauche de water et water est à la droite de earth. Il suffit de lire les lignes de configuration de droite à gauche et d'en faire une phrase pour trouver comment on configure l'engin.

La dernière section aliases est optionnelle. Elle permet d'associer un nom à un nom DNS.

3.1.2 Linux

Pour la configuration, je vous demande de regarder la partie Mac ci dessous et de mettre ceci dans ~/.synergy.conf.

3.2 Le client

Il n'y a pas de configuration cliente :-)

4 Lancement & automatisation

Nous allons voir ici comment tester et automatiser tous ces processus.

4.1 Serveur

4.1.1 Mac

Voici la ligne permettant de lancer le serveur. N'oubliez pas de changer le nom du serveur. Ici server doit être remplacer par water. Lancez les tests :

Command synergys
synergys -f --config ~/Library/synergy/synergy.conf --name <server>

Maintenant que les tests sont terminés, nous allons pouvoir passer au mode automatique pour pas a avoir à taper ceci à chaque démarrage. On va commencer par créer tout ce qu'il faut :

Command
sudo mkdir -p /Library/StartupItems/Synergy
sudo chmod 755 /Library/StartupItems/Synergy/Synergy ; sudo touch /Library/StartupItems/Synergy/StartupParameters.plist

Ensuite, on va éditer le fichier suivant :

Configuration File /Library/StartupItems/Synergy/Synergy
 #!/bin/sh
 . /etc/rc.common
 
 run=(/usr/local/bin/synergys -f --config /Users/deimos/Library/synergy/synergy.conf --name server)
 
 KeepAlive () {
 proc=${1##*/}
 while [ -x "$1" ] ; do
     if ! ps axco command | grep -q "^${proc}\$" ; then
             "$@"
     fi
     sleep 3
 done
 }
 
 StartService () {
     ConsoleMessage "Starting Synergy"
     KeepAlive "${run[@]}" &
 }
 
 StopService () {
     return 0
 }
 
 RestartService () {
     return 0
 }
 
 RunService "$1"

N'oubliez pas de remplacer server par le nom de votre machine et deimos par votre nom d'utilisateur.

Ensuite, on édite le fichier de paramètres StartupParameters.plist :

Configuration File StartupParameters.plist
 {
      Description = "Synergy Client";
      Provides = ("Synergy");
      Requires = ("Network");
      OrderPreference = "None";
 }

On redémarre la machine et c'est bon :-)

4.1.2 Linux

Pour linux, une fois que votre configuration est faite, il ne reste plus qu'à lancer le serveur :

Command synergys
synergys

4.2 Client

4.2.1 Mac

Pour tester de se connecter au serveur, rien de plus simple, ouvrez un terminal et tapez cette commande :

Command
synergyc <server> &

Remplacez server par le nom de la machine fesant office de serveur Synergy.

Maintenant que les tests sont terminés, nous allons pouvoir passer au mode automatique pour pas a avoir à taper ceci à chaque démarrage. On va commencer par créer tout ce qu'il faut :

Command
sudo mkdir -p /Library/StartupItems/Synergy
sudo chmod 755 /Library/StartupItems/Synergy/Synergy ; sudo touch /Library/StartupItems/Synergy/StartupParameters.plist

Ensuite, on va éditer le fichier  :

Configuration File /Library/StartupItems/Synergy/Synergy
 #!/bin/sh
 . /etc/rc.common
 
 run=(/usr/local/bin/synergyc -n $(hostname -s) -1 -f synergy-server)
 
 KeepAlive () {
 proc=${1##*/}
 while [ -x "$1" ] ; do
     if ! ps axco command | grep -q "^${proc}\$" ; then
             "$@"
     fi
     sleep 3
 done
 }
 
 StartService () {
     ConsoleMessage "Starting Synergy"
     KeepAlive "${run[@]}" &
 }
 
 StopService () {
     return 0
 }
 
 RestartService () {
     return 0
 }
 
 RunService "$1"

N'oubliez pas de remplacer server par le nom de votre machine.

Ensuite, on édite le fichier de paramètres StartupParameters.plist :

Configuration File StartupParameters.plist
 {
      Description = "Synergy Client";
      Provides = ("Synergy");
      Requires = ("Network");
      OrderPreference = "None";
 }

On redémarre la machine et c'est bon :-)

4.2.2 Linux

Pour le client, c'est simple, il suffit de lui indiquer le serveur :

Command synergyc
synergyc <server>

C'est tout :-)

5 Interface Graphique

Il existe maintenant une interface graphique simple pour configurer Synergy qui s'appelle QuickSynergy :

http://quicksynergy.sourceforge.net/

6 FAQ

6.1 Mon clavier client Synergy est en Anglais, comment le faire passer dans une autre langue ?

Il suffit en fait d'ajouter, au niveau de l'agencement du clavier la langue "English(US)". Redémarrez ensuite Synergy client et c'est bon :-)