Controlling multiple systems simultaneously with Synergy
Lateral Control
Synergy lets you combine multiple PCs into a single virtual desktop.
Synergy is a small but powerful tool that lets the user control multiple PCs with a single keyboard and mouse – even across operating-system boundaries. To run Synergy, you'll need at least two PCs, each with its own operating system, monitor, and a working network adapter. The software supports Windows from 95 through to Vista, Mac OS X version 10.2 or newer, and Linux with the latest X server. Prebuilt packages for Windows and Mac OS X are available from the Synergy homepage [1]. An RPM package is available for Linux and can be installed on popular distributions, along with tools such as alien if needed. Some distributions also offer prebuilt packages; for example, Ubuntu has a synergy package in its Universe repository.
Let's imagine a typical network administrator's workplace with a professional desktop running on Ubuntu, and a small notebook running on Vista next to it. To remove the need to keep swapping between keyboards, the administrator decides to install Synergy. Most of the work will be done on the desktop, the Ubuntu system. In Synergy-speak this master system is known as the server, and the administrator will be using the keyboard and mouse attached to it. In line with this, all other devices are clients.
Enabling Universe
Ubuntu organizes its software packages in numerous repositories. Universe is a hold-all for packages that are not as comprehensively supported and maintained as some others. To use Universe, you first need to enable the entry in the /etc/apt/sources.list by removing the pound sign. Then, after running apt-get update, you can install various new packages, including Synergy.
Configuration
Before you start using Synergy, you need to configure the program by editing the /etc/synergy.conf or ~/.synergy.conf text files. The program relies on the concept of screens: Every computer in the group, no matter whether it is a server or a client, is a screen with a precisely defined position – just like assigning positions to applications on a multiple display setup. You must add the screen name, its aliases, and the position relative to the other devices to the configuration file. It is important to define the position in both directions, left and right. The setup for our case study, and comments on it, are given in Listing 1. There are many more options, all of which are documented on the Synergy homepage [2].
A word of warning: Make sure you write all the options in the configuration file in lowercase, and pay attention to line breaks because Synergy is finicky and will not load the file if you make a mistake. After you complete the setup, launch the Synergy server on Ubuntu as a normal user by typing synergys. Adding the -f prevents Synergy running in the background as a service.
Listing 1
Case study
QuickSynergy
QuickSynergy gives you an even more convenient approach to configuring the tool. On Ubuntu, you can download the QuickSynergy package from the Universe repository and install it, then launch it via Applications | Tools | QuickSynergy. Unfortunately, the program failed to launch a working server in our lab.
The Vista client – that is, the PC we will be controlling via the Ubuntu system – is easier to configure. After completing the install, you can launch Synergy directly via the Start menu, which takes you to a neat-looking graphical interface (Figure 1). To connect to the server, select the Use another computer's shared keyboard and mouse option and enter the name of the server machine. Professionals might also be interested in setting extras, such as the logging level, autostart, and network details.
Linking Screens
After configuring your clients, just type synergyc server IP (or click Start if you are working on Windows), to connect the screens. This is all fairly unspectacular at first – you can use both systems in the normal way.
But if you move the mouse cursor over the right-hand border of the screen on the Ubuntu desktop, it shifts to the Vista desktop, just like on a multiple display system – the difference is that you are using two operating system platforms. Keyboard input will also reach the client while the focus is on it (i.e., the mouse cursor is on the client screen). On top of this, Synergy synchronizes the clipboard between the two systems; according to the developers, automatically setting the correct character set and converting line breaks between operating systems – a perfect way of copying longer texts and configuration files centrally. Pressing Scroll disables Synergy temporarily if needed.
There are many more options that you can set in the configuration file. Among other things, Synergy supports keyboard mapping between the server and the clients, lets you configure screen areas where no screen paging will take place, and lets you run certain actions with the press of a button.
Of course, nobody's perfect, and Synergy failed on a couple of counts in our lab. For example, it failed to synchronize the screensavers and centrally lock all the screens.
According to the homepage, the Mac OS X variant of the program in particular is not as mature as the Linux and Windows versions.
Security Note
As Synergy's authors point out on their homepage, Synergy does not possess anything in the line of authentication or encryption [3]. To be on the safe side, you might like to set up an SSH tunnel and encrypt all your data.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Gnome 48 Debuts New Audio Player
To date, the audio player found within the Gnome desktop has been meh at best, but with the upcoming release that all changes.
-
Plasma 6.3 Ready for Public Beta Testing
Plasma 6.3 will ship with KDE Gear 24.12.1 and KDE Frameworks 6.10, along with some new and exciting features.
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.
-
HashiCorp Cofounder Unveils Ghostty, a Linux Terminal App
Ghostty is a new Linux terminal app that's fast, feature-rich, and offers a platform-native GUI while remaining cross-platform.
-
Fedora Asahi Remix 41 Available for Apple Silicon
If you have an Apple Silicon Mac and you're hoping to install Fedora, you're in luck because the latest release supports the M1 and M2 chips.
-
Systemd Fixes Bug While Facing New Challenger in GNU Shepherd
The systemd developers have fixed a really nasty bug amid the release of the new GNU Shepherd init system.
-
AlmaLinux 10.0 Beta Released
The AlmaLinux OS Foundation has announced the availability of AlmaLinux 10.0 Beta ("Purple Lion") for all supported devices with significant changes.
-
Gnome 47.2 Now Available
Gnome 47.2 is now available for general use but don't expect much in the way of newness, as this is all about improvements and bug fixes.