I have 2 computers (both running linux) and I'm currently using synergy to use them. This is great, but now I'm wondering, is there any way (is it possible? being worked on? tried and failed? definitely not possible?) to not only share a mouse/keyboard/clipboard between the computers, but to share an X session? What I'm thinking is being able to drag X windows between monitors.

I realize that this is extremely non-trivial to do and I know enough about linux (though not about xserver) that I'd like to pursue this idea even if there's nothing that does this for you.

Also, I don't need to be able to just "install this and it works". I'm completely willing (and would be surprised if it didn't require) to install custom kernals, or mount partitions between machines, or whatever it takes. Since I assume it would require the same instance of xorg server running on both machines.

  • The normal way is: You startx on machineA, open xterm, ssh machineB, start there the applications you want which then run on machineB bit are displayed by machineA's xserver. Could you explain with more detail why this isn't sufficient for you and what you want to achieve instead?
    – fschmitt
    Sep 30, 2010 at 19:36
  • Because that's absolutely nothing like what I want. I want to have machineA and machineB, and start eclipse on machineA and then drag the eclipse window across to machineB.
    – Falmarri
    Sep 30, 2010 at 19:41
  • Basically what I want is synergy that lets you drag X windows between monitors/computers as well
    – Falmarri
    Sep 30, 2010 at 19:42
  • This is an interesting question because I'm not sure which would be easier/possible: (a) minimally solving the "dragging windows between monitors on two different computers problem" or (b) creating a linux cluster of sorts that was able to share resources such as video cards.
    – Steven D
    Sep 30, 2010 at 19:55
  • That's basically what I was thinking too. I really don't know enough about X to do any kind of high quality research, but it seems like it might be possible with xinerama?
    – Falmarri
    Sep 30, 2010 at 20:22

4 Answers 4


You could look into xpra - it's not quite as smooth as you describe (no dragging between X servers) but it will give you the ability to start a program on one machine and then later detach it and reattach it on another machine. (Think of it as screen for GUI applications.)

It's difficult to get tighter integration than that, because the process is still tied to the machine you start the program on, and process migration is a really hard problem.

  • Thanks! I've been looking for such an application for years. With further development an polish, this could really be something.
    – ATC
    Oct 1, 2010 at 4:26

You can use a proxy X server such as DMX or XmetaX that is a single X server for clients to connect to, but which "draws" by sending the images to multiple underlying X servers running on the hardware. Moving a window from the screen on one computer to a screen on another would just change which X server the proxy is asking to draw it, not migrate the program to execute on another server.

  • 1
    XmetaX was news to me.
    – lkraav
    Aug 11, 2011 at 14:32
  • Is there any alternative to DMX and XmetaX?
    – Mariusz
    Oct 24, 2014 at 8:30

Thread is old.. but this is for future reference.

Winswitch(based on xpra)


Window Switch is a tool which allows you to display running applications on other computers than the one you start them on. Once an application has been started via a winswitch server, it can be displayed on other machines running winswitch client, as required.

Notably it runs on Linux, Windows and Mac OS X. You can put a Mac OS X application onto a Linux desktop for example.

or x2go(it's like sharing a remote session)


  • Welcome at Unix & Linux Stack Exchange! Can you maybe elaborate a little bit more on both tools, such that people don't have to click first? Link-only answers are not that well accepted over here.
    – Bernhard
    Aug 16, 2013 at 5:41
  • I have elaborated. Winswitch is a rare gem.
    – chx
    Jun 16, 2014 at 18:13

It's not really what you wanted per say, however if you fire up computer 1 with 2 monitors, and remmina into computer 2, then you could expand the remmina window to cover both monitors, but you wouldn't be sharing 1 desktop. What I do is i have a crappy laptop and a powerful tower. I don't have anything plugged into the tower except the network. Then with the laptop I run its stuff on the laptop monitor and run remmina (to the tower) on the other monitor. It's 2 desktops, but I can mouse and keyboard between them. As far as files go, I have to run an ftp server on the tower and to move files I have to ftp to it, I'm sure there's a better way but this works for me.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .