I have set up a Linux VirtualBox Virtual Machine server. From a Windows machine, I can remote desktop to a Windows VM running on that machine, it works great. I can also use VNC to remote to an Ubuntu VM also running on that machine.

However, I would like several users to be able to access the Ubuntu VM at the same time - currently, user #2 will kick #1 out when he comes in. We are a small group of developers (<6), I could run several Ubuntu VMs at the same time, but I'm thinking there's got to be a better way.

My ultimate goal would to have what Windows Remote desktop offers in Windows 2003 (multiple user logins at the same time).

One idea I thought of was to run several x-windows instances, each on different terminal window. Each instance would be be associated with a different port, so that 'Joe' would VNC to 'ubuntu-vc:0', 'Bob' to 'ubuntu-vc:1', etc. I don't know if this is possible, though.

Any ideas?

8 Answers 8


you can also look at no-machine / freenx - works much better then vnc over slower links.

  • 1
    Upvoted. Incidentally, it works much better than VNC over faster links as well :) May 22, 2009 at 17:48
  • I second that upvote, +1. A good for-pay solution. May 22, 2009 at 19:14
  • Since you are using it for multiple users, it won't be a big deal, but it's also free for single user stuff. May 22, 2009 at 19:19
  • On top of this, freenx encrypts the network traffic by default. This is a big plus over XDMCP or VNC. May 23, 2009 at 1:31
  • 1
    right, but actually nx uses ssh to tunnel it's traffic. you can do the same with vnc [ and i suspect with xdmcp also ].
    – pQd
    May 23, 2009 at 14:32

Have you considered Xming or alternatives? Providing (mostly) full X is even nicer than remote desktop, IMO.

  • 1
    I use xming over SSH(putty) May 22, 2009 at 17:33

Yes, it is possible.

VNC supports the concept of independent authenticated sessions. It requires a bit of command-line setup, but once finished, you can start as many VNC sessions as you like; each session will authenticate against whatever display manager is running (so you get username/password prompting). You can also "standardize" your "desktops" by specifying a color depth and resolution. If you decide to go this route, I highly recommend un-installing whatever stock VNC package is given to you, and installing TightVNC (available on most distros) as it will have more options, including the all-important "-economictranslate" option, which reduces memory consumption. This option (and a reduction in color depth) are important because you are essentially rendering into a framebuffer in memory, then using the VNC protocol to push the changes to the VNC client. Multiple VNC sessions will start to eat into available system memory, so this option is only good for a few users.

As others have mentioned here, Xming will also give you a native X11 session with authentication. In terms of memory, this is the low-cost option as there is no "framebuffer" that needs to be conceived and maintained for each session.


If you use an X-Server on the Linux box, then XDM provides this service by default.

Use an X Windows client on Windows like Cygwin or something commercial and then each session is not a console session that would kick someone out. It is just another session.

I imagine there is some limit to the number of X connections allowed, but it ought to be sufficiently high that you will never really hit it.


I don't know if there's a more modern route, but the standard way in my time was to run X Windows in Microsoft Windows, that way you can run any number of applications on your Ubuntu machine and control them and display them in Microsoft Windows.

Check XMing out.


Tried XRDP? I can't offer any further documentation. Heheh, but it works very well.


Another way to get XDM functionality, in a commercial product, is through Hummingbird Exceed. I tend to use Xming or Cygwin to get X functionality on my Windows desktop, but I support other users who do all their Unix work through Exceed (X or NFS or whatever).

  • I remembered Hummingbird, but could not remember the current name for the product. So it is still called eXceed? I recall that with less than fondness, supporting it on Win3.11 and early Win95. I figured they would have renamed it by now!
    – geoffc
    May 22, 2009 at 20:37
  • It is still called eXceed. They actually have a few different products under the eXceed line now, with some different bells and whistles.
    – Milner
    May 26, 2009 at 13:04

I do this with VNC running out of xinetd.d. Here's a brief run down of the steps:

1.) Edit /etc/services to add your vnc service

# VNC Servers
vnc-1024x768x16 5900/tcp

2.) Create the xinetd entry at /etc/xinetd.d/xvncserver

service vnc-1024x768x16
protocol = tcp
socket_type = stream
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -query localhost -inetd -geometry 1024x768 -depth 16 -once 

Restart or start xinetd.

Here's an excellent write-up (specific to Gentoo) but still informative.


You must log in to answer this question.

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