I would like to be able to graphically log in to another Ubuntu machine (the server) from my Ubuntu desktop machine (the client), much like with Windows' Remote Desktop.

The "Desktop Sharing" settings that come installed by default seem to use VNC. VNC is a bit of a bandwidth hog, can only work at the resolution of whatever screen is attached to the host, requires you to log in at the machine itself, and mirrors every action on the host.

I know about X tunnelling, but that's annoying to use and doesn't always work properly (or, more accurately, some apps don't work properly).

Is there any kind of tool in between the two, similar to Remote Desktop used for Windows? Specifically, something with the following features:

  • can run at a different resolution to the host screen (if there is one)
  • can run at full screen
  • has adjustable quality settings for different bandwidths
  • doesn't require a user to be logged in locally
  • saves credentials or uses SSH keys
  • starts automatically on the server
  • client works under Gnome 3 and Unity
  • can be restricted to work with non-compositing DEs on the server (eg. XFCE)

I've been using X2go for a while, but unfortunately it no longer works fullscreen on Gnome 3 due to a couple of bugs (#1072 and #982), so if there's a better solution out there I'd like to try it.

  • possible duplicate of Remote Desktop similar to Teamviewer? – Takkat Jan 18 '12 at 12:53
  • rdesktop is what's used afaik and it uses RDP. rdesktop.org VNC should be a seperate install (and is not the default)(someome correct me if I am wrong). – Rinzwind Jan 18 '12 at 12:54
  • @Rinzwind - that appears to be a viewer, not a server. – detly Jan 19 '12 at 0:10
  • While I don't entirely disagree with the close votes, it's worth noting that x2go is a great solution to this problem, but does not appear as an answer to the duplicate or in the Wikipedia list linked to therein. But the answers to the other questions are probably close enough (if outdated) that I would not have posted a bounty to get new answers. – detly Jan 19 '12 at 3:54

12 Answers 12


In general, xrdp will do what you want. And is compatible with many RDP clients out there.

The drawback is that Unity, the default WM in Ubuntu, no longer supports it. I believe, although I've never tried it, that it works with GNOME.

For my personal use, I just installed MATE desktop (as it has less "flair" then GNOME) and configured Ubuntu to use that whenever remotely logging in.

See here for information on setting it up (This answer uses XFCE for remote-desktop. You may choose something else):


| improve this answer | |
  • I use XFCE on the server, and Gnome 3 on the client. Sorry if that wasn't clear. – detly Jun 27 '17 at 11:47
  • @detly Great! Then you have no need to change the instructions of the answer I linked to. Maybe that will solve your problem. – user595510 Jun 27 '17 at 11:48
  • Ah wonderful. It works. I have my whole screen back. I didn't actually need to do the ~/.xsession etc. stuff — since I'm using Remmina on the client, I can enter startxfce4 as the "Startup program" and it just works automatically. Only drawbacks are: no resizing resolution on the fly (I don't care about it, and it's a known feature request, and disconnecting means a full logout (rather than being able to resume a session later). Also, it seems to be using VNC under the hood, but bandwidth usage seems to be okay. – detly Jun 27 '17 at 12:03
  • I see there are workarounds for resuming sessions documented in various places too, I'll try them out soon. – detly Jun 27 '17 at 12:12
  • @detly "Disconnecting means a full logout" Something isn't configured right then, I can close a session with Remmina and resume it. – user595510 Jul 1 '17 at 10:38

I would recommend X2go. It's very similar to RDP and highly efficient even over low-bandwidth, high-latency connections. Clients for all systems, including a plugin for Firefox, etc. It works over ssh and integrates with PulseAudio so you can use VoIP, for instance. Read more on http://www.x2go.org

The x2go client requires a session command to execute upon logging in. For example, to use Unity 2D, use the session command: gnome-session --session=ubuntu-2d. This was found by looking in the file (on the host) /usr/share/xsessions/ubuntu-2d.desktop and copying value of the Exec=... line. If you want to use some other session, you can use the value from another file in /usr/share/xsessions/, but it seems that anything requiring 3D acceleration will not work.

| improve this answer | |
  • Thanks for this, x2go is fantastic! I hope you don't mind, but I edited your answer to add some info on the session command parameter needed for the client. – detly Jan 19 '12 at 3:04
  • Have to unaccept, because this answer is no longer current. X2Go is dropping support or otherwise ignoring current desktop environments in both their client and server. – detly Oct 17 '17 at 21:56

Chrome Remote Desktop BETA


This is a Chrome extension by google, which installs a plugin in chrome for enabling remote desktop sharing. The sharing is much simpler compared to other solutions, and is easy to setup.


Chrome Remote Desktop BETA allows users to remotely access another computer through Chrome browser or a Chromebook. Computers can be made available on an short-term basis for scenarios such as ad hoc remote support, or on a more long-term basis for remote access to your applications and files. All connections are fully secured.

| improve this answer | |
  • From real Chrome they made this work. However, it is not available for Chromium. So in other words, my Windows machines could do this, but it pales in comparison to the real Windows Remote Desktop. Thus my Ubuntu 16.04 machines don't have this available. So remmina is my choice for the Ubuntu laptop. – SDsolar Apr 25 '18 at 2:19

There is a linux RDP-server http://www.xrdp.org/

I used it some time ago. It worked flawlessly.

| improve this answer | |
  • xrdp seems to have some problems on Ubuntu 11.10, alas. You can only see the background (ie. wallpaper). – detly Jan 19 '12 at 0:33
  • That seems to be a problem with Unity — maybe, like with x2go, if you could set the session command it would work. – detly Jan 19 '12 at 1:57

I use NoMachine's free client (and server). They have repos which makes it easy to install. It works like a charm.

| improve this answer | |
  • I have 10 systems that would all have to be updated to use this. They all run the xrdp server. This requires having NoMachine (NX) on both ends. But upvote for the fact that it looks good. – SDsolar Apr 24 '18 at 19:45

x11vnc Install x11vnc

By installing and running x11vnc on the remote we will have access to far more options than with vnc (see manpage for x11vnc). Still you have the advantage of staying within the vnc architecture.

| improve this answer | |
  • Are you sure? I see nothing other than information about VNC on the website, package description and man page. – detly Jan 19 '12 at 0:33
  • x11vnc is not vnc-server – Takkat Jan 20 '12 at 21:54

I advise you to use X11RDP. I gives you the best performance and it is Windows compatible. You can logon from Windows (or Ubuntu) into Ubuntu.

Refer to this question for more information.

| improve this answer | |

Spice http://www.spicespace.org/ might be interesting, though it's focused on virtualization.

From their site:

The Spice project aims to provide a complete open source solution for interaction with virtualized desktop devices.The Spice project deals with both the virtualized devices and the front-end. Interaction between front-end and back-end is done using VD-Interfaces. The VD-Interfaces (VDI) enable both ends of the solution to be easily utilized by a third-party component.

Here is a link that details the install for Ubuntu http://docs.cslabs.clarkson.edu/wiki/SPICE

| improve this answer | |

First, RDP is Microsoft protocol
and VNC is alternative protocol

As of 2017 Unity - Ubuntu desktop environment does not go well with xrdp library to enable RDP,
so one need to install/use other desktop environment like gnome, xfce4
or uses one of many variation implementing VNC protocol, that can be worth or better than RDP for every particular case.

| improve this answer | |

With both Fedora 27 and Ubuntu 17.10 defaulting to a Wayland Gnome 3.26 session by default now the x2go solution isn't going to work.

According to this x2go compatibility page, x2go stopped supporting Gnome at version 3.12.

But as of today (October 17, 2017) I can't find any gnome-remote-desktop packages for Ubuntu 17.10. Ubuntu Package Search Is this functionality part of the mutter package? I was able to find one for Fedora 27: gnome-remote-desktop package.

Gnome doesn't seem to mention remote desktop support in the 3.26 Release Notes but I was able to find mention of it in Gnome bug 784199.

Here is a link to the Gnome Remote desktop and screen casting in Wayland wiki page. I hope this information helps some people who are looking for a more up-to-date answer to this problem.

| improve this answer | |

I use TeamViewer. Allows intermixed Windows/Linux.

| improve this answer | |

I believe that xrdp is the best RDP server for Ubuntu 16.04.

It works on Ubuntu and on Raspbian so I can control all of my data-loggers as well as my Ubtuntu server, from both the Ubuntu laptop and the Windows machines.

sudo apt-get update
sudo apt-get install xrdp

Windows Remote Desktop from my WIN7,8,10 systems works flawlessly with it.

remmina is the primary RDP client I use from my Ubuntu laptop.

It has a great tabbed interface for making connections to multiple servers.

Putty does a decent job as a Ubuntu ssh clinet, both terminal and/or GUI.

It is not exactly like Windows Remote Desktop, but it actually works pretty well.

sudo apt-get update
sudo apt-get install putty

To run GUI applications go down to the ssh section and check the box for X11 Forwarding.

Note that if you use a Windows box as the client then the same can work but you first run Xming before running PuTTY.

| improve this answer | |
  • Remmina works as an ssh client as well. There is no need for putty in Ubuntu. – user68186 Apr 24 '18 at 20:18
  • I agree with the second part of what you said. ssh -Y systemname works even better than either one. I tolerate remmina and can work with it, but only use it for the RDP connections where I need to open several windows on the same system, within a single session. – SDsolar Apr 25 '18 at 0:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.