Install GUI on Ubuntu |Transform Your Ubuntu Server into a Desktop

Learn how to install a GUI on Ubuntu quickly with this step-by-step guide. Follow these easy steps to transform your command-line interface.

Updated: 14 Sep, 24 by Lisa P 10 Min

List of content you will read in this article:

Ubuntu Server is built primarily for servers, so it doesn’t include a fancy GUI (graphical user interface) by default. The reason is servers value performance and aesthetics and GUIs are resource-intensive. But the good news is you can install a GUI on your Ubuntu server. For most server tasks, you may not need a GUI, but for some tools, they can be necessary. For example, some software can be managed easier with a GUI. In this guide, we show you how to install GUI on Ubuntu with a step-by-step guide. It's like giving your server a fresh appearance and feel, comparable to what you'd find on a conventional Ubuntu desktop PC.

Sometimes, a picture is worth a thousand words. Text-based interfaces or command lines that servers use are useful but for some personal projects, a GUI can be more efficient. The key benefits of having a GUI on an Ubuntu server include: 

  • Easy container management: GUIs greatly simplify the deployment and management of software containers such as Apache, MySQL, and PHP.
  • Light choices: Many Ubuntu Server GUIs are meant to be lightweight, with minimal use of resources, making them acceptable for non-production situations.
  • Cloud integration: A GUI can make integration with cloud systems easier, allowing for faster scaling of server resources.
  • Better hardware compatibility: When interfacing with hardware, GUIs can give a more user-friendly experience, particularly for amateur projects.

When to Consider a GUI?

If you don’t know exactly whether you need to install GUI on Ubuntu or not, here we tell you. Consider a GUI for:

  1. Personal projects: Are you using the Ubuntu server for personal tasks? For example, a home media server? So, we recommend using GUI because it can make management more sensational. 
  2. Visual feedback: Some tasks benefit from visual feedback like video or audio streaming. For these tasks, use a GUI to provide a clearer understanding. 

Now, let's get to the core of the matter - how to install a GUI on Ubuntu Server. Before starting the steps, let’s see what prerequisites are needed:

Prerequisites

  • An Ubuntu Server running Linux.
  • A user account with sudo or root privileges.
  • The apt package manager (installed by default on Ubuntu).

Step 1: Update Repositories and Packages

Before installing a GUI, ensure your server software is up to date.

Refresh the repository and package lists, then upgrade any necessary packages with this command:

sudo apt update && sudo apt upgrade

When prompted, press `Y` and hit Enter to begin the upgrade.

Step 2: Install and Set Up a Display Manager

A display manager handles user logins and launches the desktop. For a lightweight option, use SLiM or LightDM instead of the default GDM3, which is more resource-intensive.

To install SLiM, type:

sudo apt install slim

Confirm the installation by pressing `Y` and hitting Enter.

Note: To install LightDM instead, use:

sudo apt install lightdm

Step 3: Install a GUI Desktop Environment

Once the display manager is set up, proceed to install a GUI. Below are commands for installing popular desktop environments:

Ubuntu Desktop (GNOME)

  1. Install the default Ubuntu Desktop with this command:

sudo apt install ubuntu-desktop

  1. Reboot the system after installation with:

sudo reboot

Note: To start SLiM without rebooting, use:

sudo service slim start

GNOME (Vanilla Version)

For the pure GNOME experience, run:

sudo apt install vanilla-gnome-desktop vanilla-gnome-default-settings

KDE Plasma

  1. Install KDE Plasma with:

sudo apt install kde-plasma-desktop

  1. Reboot the system and log in to access the KDE environment.

XFCE

  1. Install the lightweight XFCE desktop environment:

sudo apt-get install xfce4-session xfce4-goodies

  1. Reboot to access XFCE.

MATE

  1. Install MATE, a resource-efficient desktop environment:

sudo apt install ubuntu-mate-desktop

LXDE

  1. For a very lightweight interface, install LXDE:

sudo apt install lxde

Step 4: Switching Between GUIs

If you’ve installed multiple desktop environments, you can switch between them from the display manager. In SLiM, press `F1` to toggle between installed environments, with the name of the selected environment displayed at the bottom of the screen.

Done! Now you can use a graphical interface on your Ubuntu server. 

To revert back to the command-line interface and remove the GUI and display manager from your Ubuntu server, follow these steps:

  • Open the terminal and use the following command to remove the display manager and desktop environment:

sudo apt remove [display-manager] [desktop-environment]

For example, to remove SLiM and LXDE, use:

sudo apt remove slim lxde

  • Reboot the system to apply the changes:

sudo reboot

  •  After rebooting, clean up unnecessary dependencies by running:

sudo apt autoremove

Now, you have successfully removed the GUI. You can return the system to a command-line interface. 

There are different GUIs for Ubuntu server and when it comes to choosing, the best one depends on your needs. For any use case, we prepared a list of the best GUI for Ubuntu server each has its pros. You can take a quick look at them in the following table. Continue reading for more detailed information. 

GUI

Best For

Features

Resource Usage

GNOME

Stability and a robust set of features

Stable, feature-rich, widely supported 

High (resource-heavy)

KDE Plasma

Customization and balance between functionality and efficiency 

Highly customizable, visually appealing

Lightweight

MATE

Simple, fast, and resource-friendly environment  

Simple interface, efficient, stable

Very low  

Xfce

Servers with limited resources, prioritizing performance over graphical appeal  

Lightweight, user-friendly, stable 

Extremely low

 

1- GNOME

One of the best GUI for Ubuntu server is GNOME. It is the default desktop for Ubuntu and one of the most popular ways to use Linux. It's dependable, simple to use, and works well with programs designed for it. However, it requires a bit more computer power, thus it may not be the ideal option for less-powered servers.

Key Features:

  • Very stable
  • Regular updates
  • Active community
  • Extensive app support
  • Mobile touch-friendly
  • Great design (but limited customizability)
  • Higher resource consumption

2- KDE Plasma

KDE Plasma is focused on allowing you to customize its appearance and functionality. You can modify almost anything about it! It's lightweight, looks excellent, and feels familiar if you're used to Windows. Also, it never needs a lot of computer power, making it suitable for servers that are not extremely powerful.

Key Features:

  • Highly customizable
  • Lightweight and fast
  • Easy to use
  • Active community support
  • Powerful apps
  • Visually appealing

3- MATE

MATE is a lightweight desktop environment that’s based on the older GNOME 2. It’s even more resource-efficient than KDE Plasma, making it an excellent choice for Ubuntu Server. It provides a familiar, Windows-like design and is ideal for servers with limited hardware, ensuring smooth performance without taxing system resources.

Key Features:

  • Extremely resource-efficient
  • Intuitive design
  • Time-tested and stable
  • Ideal for budget machines
  • Full set of applications

4- Xfce

A best GUI for Ubuntu server is Xfce. It is one of the lightest desktop environments available, making it perfect for servers with limited resources or VPS setups. It prioritizes stability and performance over modern graphics, which may not appeal to everyone. However, if you're running a server and need to conserve system resources for important tasks, Xfce is a top choice.

Key Features:

  • Very lightweight
  • Stable and user-friendly
  • Offers plugins and applications
  • Attractive design despite simpler graphics
  • Excellent for resource-limited servers

When choosing the best GUI for Ubuntu server, you need to consider these factors:

Task Requirements

The tasks your server performs should guide your choice of GUI. For example:

  • If you’re hosting a website or running a database, look for a GUI optimized for that purpose.
  • For remote server management, choose a GUI with strong remote management capabilities.
  • If you're unsure of your server's specific tasks, a general-purpose GUI can be a good starting point.

Experience Level

Your familiarity with Linux servers is another critical consideration:

  • Beginners might benefit from a user-friendly GUI that simplifies server management.
  • Experienced users may prefer more advanced interfaces that offer greater control over server settings.

Language Support

If you need a GUI that supports multiple languages, ensure the one you choose accommodates your language(s) of choice. Some GUIs offer broader language support than others.

Ease of Use and Features

Depending on your preferences:

  • Opt for a GUI that balances simplicity with the features you need.
  • If you require a lightweight GUI to conserve server resources, prioritize resource-efficient environments.

Compatibility

Ensure the GUI is compatible with your version of Ubuntu. Not all desktop environments work seamlessly with every Ubuntu version, so verify this before making a choice.

Working with the command line is easy for some people, but not for those who are more familiar with traditional operating systems. For that kind of people, it is possible to install GUI on Ubuntu server. In this case, they have more flexibility to work with different tools and options. In this guide, we were committed to help you install GUI on an Ubuntu server process which simplifies server management for you. Also, we identified the best GUI for Ubuntu server based on your specific needs. Now, you can easily switch between GUIs or remove them as needed. With this setup, you can customize your Ubuntu Server to create a more user-friendly and efficient workspace.

Lisa P

Lisa P

Hello, everyone, my name is Lisa. I'm a passionate electrical engineering student with a keen interest in technology. I'm fascinated by the intersection of engineering principles and technological advancements, and I'm eager to contribute to the field by applying my knowledge and skills to solve real-world problems.