black flat screen computer monitor beside black computer keyboard
Sat Sep 02

How to Create x2go Cloud Desktop

Do you want to enjoy the benefits of a Linux-based operating system with a graphical user interface (GUI) without installing it on your local device? Do you want to access your cloud desktop from anywhere, using any device, with a fast and secure connection?

If you are looking for a way to access your Linux desktop remotely from any device, you might want to try x2go. X2go is an open source remote desktop software that uses the NX technology protocol to provide a fast and secure remote access to Linux systems. It supports multiple desktop environments, such as KDE, GNOME, XFCE, and MATE, and allows users to resume their sessions even after they disconnect.

In this article, we will show you how to create your own x2go cloud desktop using Ubuntu 20.04 as the server and various platforms as the clients. We will also cover some of the benefits of using x2go, how to customize your cloud desktop, and how to troubleshoot.

What is x2go and why use it?

X2go is a remote desktop software that enables you to access a graphical user interface (GUI) of a Linux system over the internet. Unlike other remote desktop solutions, such as VNC or RDP, x2go uses the NX technology protocol, which compresses and optimizes the data transfer between the server and the client. This results in a faster and smoother remote desktop experience, even on low bandwidth or high latency connections.

Some of the benefits of using x2go cloud desktop are:

  • Acessing Linux desktop from any platform : You can access your Linux desktop from any device, such as Windows, Mac OS X, or Linux, using the x2go client software.
  • Using Any Desktop Environment : You can choose from different desktop environments, such as KDE, GNOME, XFCE, or MATE, depending on your preference and system resources.
  • Resume disconnected server : You can resume your sessions even after you disconnect from the server, which means you can continue working where you left off without losing any data or progress.
  • Accessing cloud just like your local computer : You can customize your cloud desktop with various applications, themes, and settings, just like you would on your local computer.
  • Easy collaboration : You can collaborate with your team members by sharing a common computer that they can access remotely to work on a project.

How to install x2go server on Ubuntu 20.04

BTo use X2Go, you need to install the X2Go server package on your Linux server and the X2Go client on your client device. In this section, we will show you how to install the X2Go server on Ubuntu 20.04. You can use a similar process for other Linux distributions.

You also need to have a user with sudo privileges and an SSH key for authentication. Just follow this guide to get started.

Installing x2go - Server side

To install the x2go server software on Ubuntu 20.04, follow these steps:

  1. Update your system packages by running the following command:

    sudo apt update

  2. Add the x2go stable repository with the following command:

    sudo add-apt-repository ppa:x2go/stable sudo apt install x2goserver x2goserver-xsession

  3. The installation process will automatically start the x2go server service. You can check its status by running the following command:

    sudo systemctl status x2goserver

You should see something like this:

● x2goserver.service - X2Go Server Daemon
		Loaded: loaded (/lib/systemd/system/x2goserver.service;
		enabled; vendor preset: enabled)
		Active: active (running) since Fri 2021-10-08 15:16:16 UTC; 5min ago
	Main PID: 1234 (x2gocleansessi)
		Tasks: 1 (limit: 1137)
		Memory: 1.4M
		CGroup: /system.slice/x2goserver.service
				└─1234 /usr/bin/perl /usr/sbin/x2gocleansessions

Oct 08 15:16:16 ubuntu systemd[1]: Starting X2Go Server Daemon...
Oct 08 15:16:16 ubuntu systemd[1]: Started X2Go Server Daemon.
  1. Optionally, you can configure some settings for the x2go server by editing the /etc/x2go/x2goserver.conf file. For example, you can change the port number, the session timeout, or the log level. For more details, you can refer to the x2go server documentation.

Installing Desktop Environment

X2Go requires a desktop environment to run GUI applications on your server. In this tutorial, we will use XFCE, which is a lightweight and customizable desktop environment. To install XFCE on your server, run the following command:

sudo apt update
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

This will install the XFCE desktop environment along with some useful plugins and utilities.

Installing x2go - Client side

After installing the X2Go server on your Linux server, you need to install the X2Go client on your client device. The X2Go client is available for Windows, Mac OS, Linux, Android, and iOS platforms. In this section, we will only show you how to install the X2Go client on Linux.

To install the X2Go client on Linux, follow these steps:

  • Add the X2Go stable repository to your system. For Ubuntu and Debian, run the following commands:

    sudo apt update sudo add-apt-repository ppa:x2go/stable

  • Install the X2Go client package. For Ubuntu and Debian, run the following command:

    sudo apt install x2goclient

For other Linux distributions, use your package manager to install the x2goclient package.

  • After the installation is complete, launch the X2Go client from your menu or your terminal.

How to connect to x2go server and start a session

Once you have installed the x2go client software on your device, you can connect to your x2go server and start a session. A session is a remote desktop environment that you can create and customize according to your needs.

To connect to your x2go server and start a session, follow these steps:

  1. Launch the x2go client software on your device.
  2. Click on the Session menu and select New session.…
  3. Fill in the following fields:
  4. Session name : Enter a name for your session, such as “Ubuntu 20.04 XFCE”.
  5. Host : Enter the IP address or hostname of your x2go server, such as “203.0.113.0” or “example.com”.
  6. Login : Enter the username of your user account on your x2go server, such as “sammy”.
  7. SSH port : Enter the port number of your SSH service on your x2go server, such as “22”.
  8. Key file : Browse and select the private key file that corresponds to your SSH key pair, such as “id_rsa”.
  9. Session type : Select the desktop environment that you want to use for your session, such as “XFCE”.
  10. Click on OK to save your session settings.

How to troubleshoot common issues with x2go

Sometimes, you may encounter some issues with x2go that affect your remote desktop experience. Here are some of the common issues and how to troubleshoot them:

  • Connection problems : If you cannot connect to your x2go server or your session is interrupted, you may need to check your network connection, firewall settings, SSH service status, or x2go server configuration. You can also try to restart your x2go server or client software.
  • Sound issues : If you cannot hear any sound from your cloud desktop or the sound quality is poor, you may need to check your sound settings on both your server and client devices. You can also try to change the sound system or codec in your x2go client session settings.
  • Keyboard layout : If your keyboard layout does not match your cloud desktop layout or some keys do not work as expected, you may need to check your keyboard settings on both your server and client devices. You can also try to change the keyboard layout or model in your x2go client session settings.

For more details on how to troubleshoot these issues, you can refer to the x2go troubleshooting documentation.

Conclusion

In this article, we have shown you how to create your own x2go cloud desktop using Ubuntu 20.04 as the server and various platforms as the clients. We have also explained some of the benefits of using x2go, how to customize your cloud desktop, and how to solve some common problems with x2go.

It allows you to choose from different desktop environments and customize your cloud desktop with various applications and themes. X2go is a great solution for accessing your Linux desktop remotely from any device with a fast and secure connection.