Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
applications:synergy [Le 31/01/2007, 11:04] Blackpegaz page déplacée vers nouveau modèle (http://doc.ubuntu-fr.org/synergy) |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | DokuWiki | ||
- | <code> | ||
- | Version Breezy | ||
- | </code> | ||
- | |||
- | [[https://wiki.ubuntu.com/SynergyHowto|Traduit]] par [[utilisateurs:Lok]] | ||
- | |||
- | ====== Synergy ====== | ||
- | Synergy permet d'utiliser un seul clavier et souris pour piloter plusieurs ordinateurs du même réseau. Les ordinateurs peuvent être sous Linux, Windows ou MacOS. Ce tutoriel montre comment paramétrer et utiliser Synergy sur Ubuntu. | ||
- | |||
- | Attention! Synergy n'est pas vraiment sécurisé! Vous allez mettre en place quelque chose qui permettra à un autre ordinateur de controler le clavier et la souris du vôtre, donc n'utilisez Synergy n'importe où sans avoir sécurisé les machines. Il existe un moyen de sécuriser un peu plus le fonctionnement de Synergy en l'utilisant avec OpenSSH, mais ce n'est pas le but de cet article. Vous pouvez lire la documentations officielle sur le site de Synergy pour plus d'informations. | ||
- | |||
- | |||
- | ===== Obtenir Synergy ===== | ||
- | La manière la plus simple est d'installer le paquet apt par synaptic ([[http://packages.ubuntu.com/hoary/net/synergy]] en 'universe', merci à Daniel Lutz). | ||
- | Il est aussi possible, mais compliqué, de récupérer le code source sur le [[http://synergy2.sourceforge.net/index.html|site officiel]] puis de compiler, paramétrer et l'exécuter en ligne de commande. | ||
- | |||
- | |||
- | ==== Par Synaptic ==== | ||
- | Note: Vous avez besoin d'une connexion internet pour les étapes suivantes. | ||
- | |||
- | - Ajoutez le [[:depots|dépôt]] Universe à votre liste si vous ne l'avez pas déjà fait. Vous trouverez comment faire [[:synaptic#comment_ajouter_ou_retirer_des_depots|ici]]. | ||
- | - Cliquez sur le bouton "Rechercher" en haut de la fenetre. Puis tapez "synergy" pour lancer la recherche du paquet. | ||
- | - Cliquez sur la case à coté de synergy puis choisissez "Sélectionner pour installation". Si votre recherche ne donne rien vérifiez l'orthographe de synergy et assurez vous d'avoir bien activé le dépôt Universe. | ||
- | - Cliquez sur le bouton "Appliquer" puis attendez la fin de l'installation. | ||
- | |||
- | ==== Par Apt-get ==== | ||
- | N'oubliez pas que Synergy se trouve dans le dépôt Universe, vous devez donc décommenter les lignes correspondant à ce dépôt dans ///etc/apt/source.list//. Si vous ne savez pas comment faire, voici une méthode : | ||
- | |||
- | Ouvrez ///etc/apt/source.list// dans un éditeur de texte, je vais le faire avec **[[:nano]]** mais vous pouvez aussi utiliser **gedit**. | ||
- | |||
- | <code>user@hoary:~$ sudo nano -w /etc/apt/sources.list</code> | ||
- | |||
- | Maintenant cherchez la ligne commentée du dépôt Universe (une ligne commentée est précédée d'un //#//), elle doit ressembler a celle-ci : | ||
- | |||
- | <code> | ||
- | # deb http://fr.archive.ubuntu.com/ubuntu breezy universe | ||
- | # deb-src http://fr.archive.ubuntu.com/ubuntu breezy universe | ||
- | </code> | ||
- | Supprimez les //#// en début de ligne, vous obtenez ceci: | ||
- | |||
- | <code> | ||
- | deb http://fr.archive.ubuntu.com/ubuntu breezy universe | ||
- | deb-src http://fr.archive.ubuntu.com/ubuntu breezy universe | ||
- | </code> | ||
- | |||
- | Maintenant dans nano appuyez sur **Ctrl-o** puis **Ctrl-x** cela va sauvegarder le fichier et sortir de nano. | ||
- | |||
- | Après cette modification, il vous faut mettre à jour vos sources: | ||
- | |||
- | <code>user@hoary:~$ sudo apt-get update</code> | ||
- | |||
- | Vos dépôts apt sont maintenant à jour et nous allons pouvoir installer Synergy: | ||
- | |||
- | <code>user@hoary:~$ sudo apt-get install synergy</code> | ||
- | |||
- | Voilà pour l'installation de Synergy sur une Ubuntu. Si vous souhaiter l'installer sur un autre système, comme Windows, vous trouverez toutes les informations nécessaire sur le [[http://synergy2.sourceforge.net/index.html|site de Synergy]].h | ||
- | |||
- | |||
- | ===== Configurer Synergy ===== | ||
- | Maintenant que Synergy est installé, il va falloir le configurer. Cependant, vous devez le configurer sur au moins deux machines différentes puisque configurer Synergy sur une seule machine n'a pas vraiment d'intérêt. Je vais vous expliquer comment le configurer aussi bien en tant que serveur qu'en tant que client, mais seulement sur Ubuntu. Encore une fois si vous souhaitez le configurer pour un autre système référez vous aux instructions sur le [[http://synergy2.sourceforge.net/index.html|site de Synergy]]. | ||
- | |||
- | ==== Configuration Serveur ==== | ||
- | Pour configurer le serveur Synergy, créer le fichier ///etc/synergy.conf// (ou un fichier //~/.synergy.conf// si vous préférez une configuration pour un seul utilisateur seulement), puis remplissez ce fichier de cette manière: | ||
- | <code> | ||
- | section: screens | ||
- | hoary: | ||
- | arthur: | ||
- | end | ||
- | section: links | ||
- | hoary: | ||
- | right = arthur | ||
- | arthur: | ||
- | left = hoary | ||
- | |||
- | end | ||
- | </code> | ||
- | C'est un exemple de configuration tiré de mon synergy.conf. | ||
- | La signification des paramètres de configuration sont les suivant: | ||
- | * **hoary** est le nom de ma machine principale, c'est elle qui exécutera le serveur Synergy. La machine qui a le serveur est celle qui possède le clavier et la souris utilisé, les autres machines ne sont que des "écrans" supplémentaires en quelque sorte. | ||
- | * **arthur** est le nom de la machine client (c'est une autre ubuntu). | ||
- | * **section: screens** est la partie qui liste les machines qui seront utilisées en fonction de leurs hostname. | ||
- | * **section: links** défini de quelle façon la souris quittera l'ecran d'une des machines pour passer sur une autre. Ici on a placer l'écran de **hoary** a gauche de de celui d'**arthur**, donc si la souris va tout à droite de l'ecran de **hoary** elle arrivera sur la gauche de celui de **arthur**, et inversement. On aurait aussi pu placer **ubuntu42** au-dessus de **arthur** en specifiant //up// au lieu de //left//, //bottom// au lieu de //right//, etc... | ||
- | |||
- | ==== Configuration Client ==== | ||
- | Il n'y en a pas, il suffit d'installer Synergy :-) | ||
- | |||
- | ===== Executer Synergy ===== | ||
- | Pour lancer le serveur exécuter la commande : | ||
- | <code> | ||
- | user@hoary:~$ synergys -f | ||
- | </code> | ||
- | Si votre fichier synergy.conf est dans un endroit différent vous pouvez le spécifier en utilisant : | ||
- | <code> | ||
- | user@hoary:~$ synergys -f -c /endroit/de/votre/synergy.conf | ||
- | </code> | ||
- | |||
- | Pour un client (dans ce tutoriel le client est aussi executé sous Ubuntu) | ||
- | <code> | ||
- | user@arthur:~$ synergyc -f <ip address of server> | ||
- | </code> | ||
- | si le serveur hoary a l'adresse ip //192.168.0.1// on a donc: | ||
- | <code> | ||
- | user@arthur:~$ synergyc -f 192.168.0.1 | ||
- | </code> | ||
- | Note: l'option -f dit à Synergy de s'exécuter dans le terminal | ||
- | |||
- | Si la commande est exécutée sans l'option //-f// Synergy se lance alors indépendamment du terminal, vous pouvez alors fermer le terminal sans craindre de tuer Synergy. | ||
- | |||
- | ===== Configurer pour un démarrage automatique ===== | ||
- | Vous ne voudrez probablement pas le lancer manuellement à chaque démarrage de votre machine, voici comment le parametrer pour un démarrage automatique: | ||
- | |||
- | ==== Avec GNOME ==== | ||
- | Pour ajouter Synergy au démarrage automatique de votre session, allez dans Système -> Préférences -> Session, puis cliquez sur le 3ème onglet et ajoutez un programme au démarrage avec un Ordre de 40. La commande est celle que vous utilisiez au chapitre précédent mais attention ne mettez pas l'option //-f// cela empecherais le chargement de gnome en attendant indéfiniment la fin de Synergy. | ||
- | |||
- | ==== Avec un autre Environnement ==== | ||
- | Si vous utilisez un service graphique pour vous identifier/loguer (par défaut Ubuntu utilise GDM et Kubuntu KDM, tout les deux fournisse ce service graphique). | ||
- | |||
- | Il est assez simple de lancer automatiquement Synergy. Il suffit d'ajouter un petit script exécutable dans le dossier ///etc/X11/Xsession.d/// avec une première ligne spécifiant d'exécuter le script avec bash et une seconde avec la commande que vous voulez exécuter, par exemple pour un client Synergy qui doit se connecter a un serveur a l'adresse 192.168.0.1 le script serait composé de:(n'oubliez pas d'utiliser sudo pour pouvoir écrire dans le dossier ///etc// ou n'importe quel de ses sous-répertoires) | ||
- | <code> | ||
- | #!/bin/sh | ||
- | /usr/bin/killall synergyc | ||
- | sleep 1 | ||
- | /usr/bin/synergyc 192.168.0.1 | ||
- | </code> | ||
- | Attention si vous ajoutez le //-f// vous aurez un script qui ne se terminera pas et donc GNOME ne se chargera pas. | ||
- | |||
- | Le nom de ce fichier est crucial! Le nom doit commencer par deux chiffres, pour spécifier son ordre de lancement. Le reste du nom n'est vraiment pas important. J'ai essayé avec 12synergy, 22Synergy, 32synergy et 54synergyc. Toutefois cela ne permet pas d'utiliser Synergy à l'écran d'identification. Heureusement il existe un moyen de l'utiliser même là pour ceux qui souhaitent se loguer avec un autre clavier. Vous allez devoir éditer encore deux autres fichiers dans le dossier ///etc/X11/// en lien avec gdm. | ||
- | |||
- | Nous voulons que le client soit lancé quand gdm est aussi lancé, avant l'identification d'un utilisateur. Ajoutez les lignes suivantes à votre ///etc/X11/gdm/Init/Default//: (Ajoutez les au sommet du fichier juste après les lignes commentées avec des //#//) | ||
- | <code> | ||
- | /usr/bin/killall synergyc | ||
- | sleep 1 | ||
- | /usr/bin/synergyc xxx.xxx.xxx.xxx | ||
- | </code> | ||
- | où xxx.xxx.xxx.xxx est l'adresse ip du serveur. | ||
- | |||
- | Pour que le client Synergy puisse etre exécuter par l'utilisateur plutot que par le root juste apres que l'identification soit faite, nous devons tuer le processus //synergyc// lancé par le root au même moment que GDM (ou KDM), un processus lancé par le root ne peut être tué que par lui, nous allons donc éditer le fichier ///etc/X11/gdm/PreSession/Default// qui est le dernier script bash exécuté en root avant que l'utilisateur ne prenne la main. Modifier votre ///etc/X11/gdm/PreSession/Default// pour qu'il soit comme ceci : | ||
- | <code bash> | ||
- | #!/bin/sh | ||
- | # | ||
- | # Note that any setup should come before the sessreg command as | ||
- | # that must be 'exec'ed for the pid to be correct (sessreg uses the parent | ||
- | # pid) | ||
- | # | ||
- | # Note that output goes into the .xsession-errors file for easy debugging | ||
- | # | ||
- | PATH="/usr/bin/X11:/usr/X11R6/bin:/opt/X11R6/bin:$PATH:/bin:/usr/bin" | ||
- | |||
- | gdmwhich () { | ||
- | COMMAND="$1" | ||
- | OUTPUT= | ||
- | IFS=: | ||
- | for dir in $PATH | ||
- | do | ||
- | if test -x "$dir/$COMMAND" ; then | ||
- | if test "x$OUTPUT" = "x" ; then | ||
- | OUTPUT="$dir/$COMMAND" | ||
- | fi | ||
- | fi | ||
- | done | ||
- | unset IFS | ||
- | echo "$OUTPUT" | ||
- | } | ||
- | |||
- | |||
- | # Le processus synergyc, lancé en root, se finit ici. | ||
- | /usr/bin/killall synergyc | ||
- | sleep 1 | ||
- | |||
- | |||
- | |||
- | XSETROOT=`gdmwhich xsetroot` | ||
- | if [ "x$XSETROOT" != "x" ] ; then | ||
- | # Try to snarf the BackgroundColor from the config file | ||
- | BACKCOLOR=`grep '^BackgroundColor' /etc/gdm/gdm.conf | sed 's/^.*=\(.*\)$/\1/'` | ||
- | if [ "x$BACKCOLOR" = "x" ]; then | ||
- | BACKCOLOR="#76848F" | ||
- | fi | ||
- | "$XSETROOT" -cursor_name left_ptr -solid "$BACKCOLOR" | ||
- | fi | ||
- | |||
- | |||
- | SESSREG=`gdmwhich sessreg` | ||
- | if [ "x$SESSREG" != "x" ] ; then | ||
- | # some output for easy debugging | ||
- | echo "$0: Registering your session with wtmp and utmp" | ||
- | echo "$0: running: $SESSREG -a -w /var/log/wtmp -u /var/run/utmp -x \"$X_SERVERS\" -h \"$REMOTE_HOST\" -l \"$DISPLAY$ | ||
- | exec "$SESSREG" -a -w /var/log/wtmp -u /var/run/utmp -x "$X_SERVERS" -h "$REMOTE_HOST" -l "$DISPLAY" "$USER" | ||
- | # this is not reached | ||
- | fi | ||
- | |||
- | # some output for easy debugging | ||
- | echo "$0: could not find the sessreg utility, cannot update wtmp and utmp" | ||
- | exit 0 | ||
- | </code> | ||
- | |||
- | Pour un serveur, la méthode reste à peu près la même : il suffit de créer simplement un fichier 12synergy dans ///etc/X11/Xsession.d/// contenant: | ||
- | <code> | ||
- | #/bin/bash | ||
- | /usr/bin/killall synergys | ||
- | sleep 1 | ||
- | synergys --config /etc/synergy.conf | ||
- | </code> | ||
- | |||
- | |||
- | |||
- | ===== Fin ===== | ||
- | Maintenant que Synergy est installé et configuré, vous pouvez copier et coller entre les machines. J'utilise Synergy tout le temps, comme ça je peux écrire dans un écran et parler/lire mes mails avec l'autre. Synergy permet de rendre plus simple l'utilisation de plusieurs machines simultanément. |