249

Trying to run a Ubuntu server for the first time... But everything is in a terminal. Is there a way to switch to a GUI?

muru
  • 207,228

14 Answers14

206

There's no specific distribution called “Ubuntu server”, it's all Ubuntu. There are different installation media for Ubuntu desktop and server, but the difference is only in the initial installation program and the set of packages included. The server installation media doesn't install a GUI by default, but it's just a package installation away. The desktop installation media does install a GUI by default.

To add a desktop UI environment to an Ubuntu installed as the "server" variety, you'll need to install some packages from the internet.

Run these commands to install a desktop environment:

sudo apt-get update
sudo apt-get install ubuntu-desktop

You should get a graphical login prompt at that point (I'm not completely sure; if you don't get one, reboot).

Once you have a GUI, you should go and enable a few more software sources, at the very least security updates and the universe repository. Click on the Ubuntu button, and search for "Software Sources”, and check the “restricted”, “universe” and “multiverse” boxes (in addition to “main”) in the first tab, and check at least “-security” and “-updates” (and you might as well check the others) in the “Updates” tab.

rogerdpack
  • 1,029
136

If you want to administer locally

You can install the default Ubuntu desktop by executing the following:

sudo apt-get install ubuntu-desktop

There are many desktop alternatives which you may install and use, like:

  • Gnome 3 installation: sudo apt-get install gnome-shell
  • KDE see Kubuntu installation: sudo apt-get install kubuntu-desktop
  • XFCE installation: sudo apt-get install xfce4
  • LXDE installation: sudo apt-get install lxde
  • Openbox installation: sudo apt-get install openbox
  • Gnome Classic (old) a Gnome 3 desktop that looks like Gnome 2 installation: sudo apt-get install gnome-session-fallback
  • Ubuntu Gnome (Official flavor) installation: sudo apt install ubuntu-gnome-desktop

Local and or remote administration

Except from the above you can administer your server by using a web based solution using less resources:

  • Webmin installation: see here
  • Zentyal (offers community edition there seems to be no free edition enymore. A lot of complaints, it's stripped down more and more... ) installation: see here
  • ISPConfig (supports up to 16.10) installation: see here
Stef K
  • 4,886
89

Hi guys after a little research I wanted to share an answer too!
Some more info can be found here https://help.ubuntu.com/community/ServerGUI. I assume you start with a clean install of Ubuntu Server 16.04 (some modifications may be needed for older versions of Ubuntu). Depending on your needs you can do these:

  1. Minimal GUI:

    sudo apt install xorg
    sudo apt install --no-install-recommends openbox
    

    Run the command startx and openbox will start (you can open a terminal there and run any application you want)

  2. Minimal GUI with display manager:

    sudo apt install xorg
    sudo apt install --no-install-recommends lightdm-gtk-greeter
    sudo apt install --no-install-recommends lightdm
    sudo apt install --no-install-recommends openbox
    

    After reboot you will see the lightdm login menu.

  3. A more functional minimal desktop environment (the one I use):

    sudo apt install xorg
    sudo apt install --no-install-recommends lightdm-gtk-greeter
    sudo apt install --no-install-recommends lightdm
    sudo apt install --no-install-recommends lxde-icon-theme
    sudo apt install --no-install-recommends lxde-core
    sudo apt install --no-install-recommends lxde-common
    sudo apt install --no-install-recommends policykit-1 lxpolkit
    sudo apt install --no-install-recommends lxsession-logout
    sudo apt install --no-install-recommends gvfs-backends
    

    EXPLANATION: lxde-icon-theme is needed for basic icons(there are alternatives), lxde-core and lxde-common will install the basic lxde components, policykit-1 andlxpolkit are needed to run pkexec, lxsession-logout is needed so that the logout menu works, gvfs-backends is needed if you want trash,network,devices etc support at pcmanfm

  4. A full lightweight desktop environment:

    sudo apt install xorg
    

    Then choose one of these:

    sudo apt install --no-install-recommends lubuntu-core
    

    OR

    sudo apt install --no-install-recommends xubuntu-core
    

    OR

    sudo apt install --no-install-recommends ubuntu-mate-core
    

    EXPLANATION: Each of these metapackages is based on lxde,xfce and mate desktop respectively including dependencies such as alsa, lightdm etc. and with many more packages such as themes, configurations etc.

  5. A full lightweight desktop environment without minding the recommendations:

    Choose one of these:

    sudo apt install lubuntu-core
    

    OR

    sudo apt install xubuntu-core
    

    OR

    sudo apt install ubuntu-mate-core
    

    EXPLANATION: Almost the same as 4 (including full xorg installation) but with many more packages such as bluetooth, printers, scanner support, different themes and fonts, basic gnome tools etc.

  6. A full desktop with all the extras (better choose another option):

    Choose one of these:

    sudo apt install lubuntu-desktop
    

    OR

    sudo apt install xubuntu-desktop
    

    OR

    sudo apt install ubuntu-mate-desktop
    

    OR

    sudo apt install ubuntu-gnome-desktop
    

    OR

    sudo apt install ubuntu-desktop
    

    OR

    sudo apt install kubuntu-desktop
    

    EXPLANATION: This will install everything that the live cd of each ubuntu flavor installs (that means even the media players or whatever they find useful for their flavor. So, it's not recommended option

TIP1: The --no-install-recommends options applies to all dependencies packages recursively so I first install xorg package to make sure all graphic drivers and other packages are installed and so that my system is portable even if I change motherboard or GPU. Some people install only components of xorg but I've never been able to create a usable system this way.

TIP2: If an option you choose installs network-manager and network-manager-gnome then better use it to configure your network and delete everything at /etc/network/interfaces file (except the lo interface) in order to avoid conflicts.

TIP3: If you need remote desktop via x11vnc then choose option 2 to 6 (I think you also need to add option -auth guess and -loopso that vnc works before you login and after you logout)

TIP4: At options 2 to 6 if you wanna stop lightdm autostarting then run the command sudo systemctl disable lightdm and you can start it whenever you want with sudo systemctl start lightdm. To re-enable it run sudo systemctl enable lightdm and check it with systemctl is-enabled lightdm (sometimes you can't re-enable it and the is-enabled commands has output static so run sudo apt install --reinstall lightdm to fix it)

TIP5: There is also another option (which I left out on purpose). You can install the specific desktop environment metapackage like lxde, xfce4, mate-desktop-environment, plasma-desktop, unity, gnome. However, you will need more packages than just xorg in most cases and these packages or metapackages might install packages that are not longer preferred by any Ubuntu flavor. For example lxde installs wicd as recommendation when all flavors (including lubuntu) use network-manager and network-manager-gnome nowadays. To see differences between packages you can search here: http://packages.ubuntu.com/

TIP6: If upon boot you see the greeter and it throws you back to tty again, then simply restart the lightdm by firing sudo service lightdm restart

64

Ubuntu Server never comes with a GUI. All activities that you need to do on a server can to be done through terminal. Even if you download the GUI, you will probably be able to access internet and get online support via forums or through chat. But there are no server / activities management tools for linux as yet which need a GUI for management.

If you are looking for some GUI similar to Windows Server, then such GUI does not exist for Ubuntu Server. But you can download a Ubuntu desktop on a server to get the UI...All server related activities will still be required to be done through the terminal. You can download the desktop GUI on the server through the following command...

Following are the options

  1. To install the default Unity desktop environment: sudo apt-get install ubuntu-desktop

  2. To install the Unity desktop environment without addons like (Email, OpenOffice): sudo aptitude install --without-recommends ubuntu-desktop

  3. To install a very lightweight desktop environment, just the basic GUI (XFCE): sudo apt-get install xubuntu-desktop (or LXDE: sudo apt-get install lubuntu-desktop for an even lighter GUI)

edwinksl
  • 24,109
21

The reason why it's called "Server" is because it's lightweight (no GUI or extra packages) to run the machine as lean as you possibly can. Adding a GUI to it defeats the purpose of a Server installation.

However, installing as Server then using apt-get install/aptitude install your choice of a desktop can help to weed out unnecessary applications than from doing a direct installation of a Ubuntu Desktop release. If you're going this route, I personally like

sudo aptitude install --without-recommends ubuntu-desktop

EDIT: However, if you're using it as a real "Server" (ftp, web hosting, DNS, etc.), it is highly recommended to learn how to navigate Ubuntu via its shell instead of the GUI.

And what UbuntuIngrained said about the necessity of knowing the shell isn't necessarily true. There are packages that install GUIs for different server functions.

18

Ubuntu server is designed to use minimal resources. A GUI will lead to high resource usage, however if you still want a GUI, you can install only what's required for the default Unity desktop.

Install ubuntu-desktop with the argument --no-install-recommends. This will exclude unnecessary software and tools like LibreOffice, Firefox, Thunderbird, etc.

sudo apt-get install --no-install-recommends ubuntu-desktop

Read these guides.

13

Ubuntu Server has no GUI, but you can install it additionally. Simply login with the user you created during installation and install the Desktop with.

sudo apt-get install ubuntu-desktop

Afterwards type

reboot

and you are done.

ddeimeke
  • 3,149
6

If you look very closely at the official Ubuntu Server Guide. Chapter 6 Remote Administration you will find that the last article would be of extreme interest. Trust me you do not want to install a DeskTop environment on a server, it uses up too many resources up to 50 to 60% if you go bananas and you don't get any benefit to control your server from a GUI standpoint.

Read and digest chapter 6.3 Zentyal. That is what you would need. I can't believe I overlooked that myself. So don't be afraid to install it, this is a full blown web interface that my first impression of installing the zentyal-core and zentyal-common was "AWESOME" look no further for anything other than the sanctioned web interface by Ubuntu creators.

However looks like this software might cost you money, but if you are serious about using a GUI, I'm sure the fees might be affordable for light use. Not everything in life is free if you want it bad enough. However I am sure home use might be fee free, depends on what services you need. This software comes with lots of modules, I dare say you should only install the ones you need.

5

Some of the desktop managers have core-packages, so you can only install the desktop without any applications.

  • LXDE: sudo apt-get install lxde-core (for full sudo apt-get install lxde )
  • XFCE: sudo apt-get install xfce4 (for full sudo apt-get install xubuntu-desktop)
  • GNOME: sudo apt-get install gnome-core (for full sudo apt-get install gnome)

Source

muru
  • 207,228
4

Instead of adding A full Desktop Environment, consider adding a lightweight web-based frontend.

Cockpit has been in the Ubuntu Repositories since 16.04.

  • Does not use any non-Ubuntu sources
  • Does not change any server configuration files
  • Easy to use, easy to understand

Installation is trivial:

    sudo apt install cockpit
    // After install, point your web browser at http://<server_ip_address>:9090

Removal is just as easy:

    sudo apt remove cockpit.
    // No weird scripts, no additional cleanup.
user535733
  • 68,493
3

Install gnome package via sudo apt-get install ubuntu-desktop. You might additionally need to install: x-window-system-core, xserver-xorg, gnome-desktop-environment, gdm but apt-get will probably do that.

As to the internet thingy: You can set up a bridge or emulate a router. How to do that depends a bit on your hardware. There is a myriad of forum posts and howtos available on that subject. Use Google.

Packages of interest: bridge-utils OR dnsmasq. The hostapd package is for WLAN access point if you want your laptop to be one. But frankly I don't see, why you don't connect your sever to the internet. A WLAN card is cheap and easy and I suppose your internet laptop is connected through a router already.

con-f-use
  • 19,041
3
  1. Configuring an interface:

    sudo ip link set dev eth0 down
    sudo dhclient eth0
    

    This will bring eth0 up using DHCP.

  2. Install your choice of a desktop:

    sudo apt-get update
    sudo apt-get install ubuntu-desktop
    reboot
    
Eric Carvalho
  • 55,453
2

The thing is, there is no GUI included with the server edition. You can install and use Webmin - a web based graphical interface, or, if you want desktop-like GUI, you'll need to pick and install the packages manually. The bare minimum would be Xorg, a window manager and probably a file manager.

con-f-use
  • 19,041
mikewhatever
  • 33,013
1

Gathering from what you are saying I assume you would like one of two things:

  1. Re-install MacOS
  2. Install a GUI on the (already cleanly wiped) system.

Am I correct in this?

If it's the first, you should mark this and ask a Moderator to move it the "Ask Different" section, if it's the second you once again have two choices:

  1. Download the Ubuntu 11.04 Desktop installation DVD and install all the required packages on the server, or
  2. Simply install the Desktop Edition on the system from scratch (my suggestion, since you have already wiped everything of interest anyways) and then install any needed server components on top of that using Ubuntu's package manager, Synaptic, or the CLI.
Eugéne
  • 227