Nachdem btk heute über ein nettes Tool namens Multiplicity einen Artikel
geschrieben hat und darin Synergy erwähnt hat, wurde bei mir mal wieder der Spieltrieb geweckt.
Erstmal vornweg zur Erklärung: Sowohl Synergy, als auch Multiplicity sind Tools um mehrere Maschinen zu einer Art virtuellen Monitor zu verbinden. Dabei werden mehrere grafische Oberflächen mit einer Maus und einer Tastatur gesteuert. Verläßt man den Bildschirm der einen Maschine mit dem Mauszeiger, so taucht er auf der anderen Maschine wieder auf und man kann dort tippen. Das ganze funktioniert ohne merkbare Verzögerung. Zusätzlich werden auch noch die Zwischenablagen der einzelnen Maschinen synchronisiert.
Da Multiplicity ein Tool für Windows und MacOS ist, kam ein Test für mich leider nicht in Frage. Ich nenne nunmal nur eine einzige Windowsmaschine mein eigen und die ist auch noch emuliert. Also habe ich mir Synergy mal etwas näher angeschaut. Laut Webseite läuft das Tool unter Windows, Unix und MacOS X.
Mein Testsetup:
- namenlos-mobil (mein Laptop) als Server
- namenlos (mein Serverchen) als Client
Auf beiden Maschinen läuft ein Debian unstable, verbunden sind sie mit 100 MBit/s Ethernet. Glücklicherweise ist Synergy als Paket im Debian-Tree vorhanden, so daß sich eine Installation auf
apt-get install synergy beschränkt. Die Konfiguration des Systems findet auf dem Server statt. Dazu legt man dort eine Datei an, in der man beschreibt, wie die Bildschirme zueinander angeordnet sind. Das ist immer in beide Richtungen notwendig. Wenn man also beschrieben hat, daß Bildschirm1 links von Bildschirm2 ist, dann muss man auch noch beschreiben, daß Bildschirm2 rechts von Bildschirm1 ist. Tut man das nicht (was durchaus Absicht sein könnte), dann kann der Mauszeiger zwar von Bildschirm1 zu Bildschirm2 wandern, aber nicht zurück. Bei mir sieht die Konfigurationsdatei wie folgt aus:
section: screens
namenlos:
namenlos-mobil:
end
section: links
namenlos:
right = namenlos-mobil
namenlos-mobil:
left = namenlos
end
Im Grunde genommen nahezu selbsterklärend. Es existieren zwei Bildschirme:
namenlos und
namenlos-mobil. Diese sind so angeordnet, daß sich namenlos links von namenlos-mobil befinded (so, wie das tatsächlich auf meinem Schreibtisch ist). Wie bereits erklärt muss auch die Gegenrichtung angegeben werden. Damit ist dann aber der Konfigurationsaufwand schon beendet. Man startet den Server nun mit
synergys -f --config syn.conf. Dieser lauscht nun auf Port 24800 auf die Anfragen von irgendwelchen Clients. (Hinweis: der Server muss unter X gestartet werden, damit er sich an den X-Server anhängen kann. Logisch, wo sollte sonst die Maus etc. herkommen?)
Synergy selbst bringt keinerlei Sicherheitsfunktionen wie Nutzerauthentisierung oder Verschlüsselung mit. Damit nun nicht jeder meine Tastendrücke und ähnliches im Netz mitlesen kann (namenlos und namenlos-mobil sind über ein öffentliches Netz verbunden) muss da also noch getunnelt werden. Glücklicherweise benutzt Synergy nur eine einzige TCP-Verbindung. Das perfekte "Opfer" für einen SSH-Tunnel also. Von namenlos aus habe ich mittles ssh -L 24800:localhost:24800 namenlos@namenlos-mobil den entsprechenden Tunnel aufgesetzt. Nun werden alle Verbindungen, die auf namenlos an Port 24800 gehen auf denselben Port auf namenlos-mobil weitergeleitet. Auf dem Client wird nun (unter X) das Clientprogramm gestartet und mit dem Server verbunden. Da der Tunnel auf localhost:24800 endet, ist das auch der Server. Der Befehl lautet also synergyc -f localhost. Sowohl Server als auch Client werden nun ein paar Ausgaben machen und dann melden, daß alles erfolgreich geklappt hat. Wenn ich jetzt den Mauszeige auf namenlos-mobil über den linken Bildschirmrand hinaus bewege, dann taucht er auf namenlos wieder auf und ich kann auch dort Tasteneingaben machen. Beispielsweise schreibe ich diesen Text gerade auf der Tastatur von namenlos-mobil in ein Fenster auf namenlos. Ziemlich brauchbar, das ganze.
Leider ist da, wo Licht ist auch etwas Schatten. Der Versuch, ein Bild von einer Gimp-Session auf namenlos in eine Session auf namenlos-mobil zu kopieren scheitert leider. Hier macht sich das fehlen einer standardisierten Schnittstelle für Bilddaten unter X11 bemerkbar. Texte lassen sich wunderbar zwischen den einzelnen Maschinen hin- und herkopieren. Bspw. habe ich die gesamte URLs in dem Text aus dem auf namenlos-mobil laufenden Browser kopiert und in den auf namenlos laufenden eingefügt. Wenn das mit Bildern jetzt auch noch so ginge....
Fazit: einfach geil. Ich frage mich jetzt schon, wieso ich hier eigentlich immer so eine klobige Tastatur stehen hatte. Zumindest solange mein Schreibtisch derart begrenzt Platz bietet ist Synergy eine perfekte Lösung, die ich schon viel früher hätte entdecken sollen.
Aufgenommen: Apr 15, 21:13