Install and Configure ThinLinc Virtual Desktop Infrastructure (VDI) on Ubuntu with GPU Support

Virtual Desktop Infrastructure (VDI) provides a secure and centrally managed desktop operating system environment from a single server. Cendio ThinLinc is an open-source, enterprise-grade remote desktop solution designed for Linux systems.

This guide explains how to deploy a ThinLinc server on a Cloud GPU ccloud³ VM, configure GPU acceleration, and connect to your virtual desktop through both the ThinLinc client application and a web browser.

Prerequisites

  • Deploy an Ubuntu 20.04 Server with any of the Nvidia GPUs we are offering.
  • Access the server via SSH as a non-root user with sudo privileges.

Install ThinLinc Server

ThinLinc offers a Virtual Desktop Infrastructure (VDI) environment that lets multiple users connect to your Ubuntu Desktop through a web interface or desktop client. Follow the steps below to download and install the ThinLinc server.

Update your system package index:

Download the latest ThinLinc server package from Cendio:

$ wget https://www.cendio.com/downloads/server/tl-4.19.0-server.zip

Extract the downloaded archive:

$ unzip tl-4.19.0-server.zip

Navigate to the extracted directory:

Run the ThinLinc installer:

The installation script will guide you through setup, including:

  • Accepting the license agreement (enter yes).
  • Choosing Master as the server type.
  • Entering the externally reachable IP, administrator email, and web admin password.

Allow the wizard to automatically install missing dependencies and configure firewall and AppArmor rules. After completion, ThinLinc services will start automatically.

Verify the running ThinLinc services:

$ sudo systemctl status vsmserver vsmagent tlwebaccess

Service overview:

  • vsmserver: Handles authentication and session management.
  • vsmagent: Starts and maintains user sessions.
  • tlwebaccess: Provides web browser access over HTTPS.

Enable VirtualGL for GPU Acceleration

To enable GPU acceleration, install VirtualGL, which redirects OpenGL commands to the NVIDIA GPU for better rendering performance.

Download the GPG key for the VirtualGL repository:

$ wget -qO- https://packagecloud.io/dcommander/virtualgl/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/virtualgl-archive-keyring.gpg

Add the VirtualGL repository:

$ echo "deb [signed-by=/usr/share/keyrings/virtualgl-archive-keyring.gpg] https://packagecloud.io/dcommander/virtualgl/any any main" | sudo tee /etc/apt/sources.list.d/virtualgl.list

Update and install VirtualGL with GPU testing tools:

$ sudo apt update
$ sudo apt install virtualgl glmark2 xterm -y

Check the installation version:

Configure VirtualGL:

$ sudo /opt/VirtualGL/bin/vglserver_config

Follow the setup prompts to restrict GPU access to the vglusers group and enhance security.

Add your ThinLinc user to the vglusers group:

$ sudo usermod -aG vglusers example-user

Stop display and NVIDIA services before rebooting:

$ sudo systemctl stop sddm nvidia-persistenced
$ sudo modprobe -r nvidia_uvm nvidia_drm nvidia_modeset nvidia
$ sudo reboot

Access Ubuntu Desktop via ThinLinc Client

Download and install the ThinLinc client package from Cendio:

$ wget https://www.cendio.com/downloads/clients/thinlinc-client_4.19.0-4005_amd64.deb
$ sudo apt install ./thinlinc-client_4.19.0-4005_amd64.deb

Launch the ThinLinc client and connect using your server’s IP, username, and password. You will see your Linux desktop running on the GPU VM.

Access Ubuntu Desktop via Web Browser

ThinLinc also enables browser-based access. Open your web browser and navigate to:

https://SERVER_IP:300

Log in with your ThinLinc credentials to access your desktop session within the browser.

Run a graphics benchmark to verify GPU acceleration:

$ glmark2 --show-all-options

Check GPU usage to confirm NVIDIA acceleration:

Access ThinLinc Control Panel

ThinLinc’s web-based Control Panel allows administrators to manage users, sessions, and settings. Access it at:

https://SERVER_IP:1010

Log in using the admin credentials set during installation to manage your environment.

Conclusion

You have successfully deployed a Linux-based Virtual Desktop Infrastructure (VDI) using Cendio ThinLinc on a Cloud GPU VM. You installed and configured the ThinLinc server, enabled GPU acceleration with VirtualGL, and verified performance using benchmarking tools. Finally, you connected to your virtual desktop via both the ThinLinc Client and a web browser, confirming secure, GPU-accelerated access to your Ubuntu environment.

Source: vultr.com

Create a Free Account

Register now and get access to our Cloud Services.

Posts you might be interested in: