By default a full installation of CentOS 7 will have the graphical user interface (GUI) installed and it will load up after system boot, however if we have installed CentOS without the GUI we can always install it later.
This quick guide will cover how to install the GNOME 3 desktop on CentOS 7, which will provide a GUI for working with the Linux system. While I don’t suggest using a GUI on a production server, it’s a good option if you’re using CentOS as a desktop.
Install GUI In CentOS
While there are many different graphical user interfaces available for Linux, in this example we will be using GNOME, which is what CentOS uses by default.
This is as simple as installing the “GNOME Desktop” package group, which is already configured to install hundreds more packages that are required for a GUI installation.
[[email protected] ~]# yum groupinstall "GNOME Desktop" -y
Note that this may take a while, on my minimal installation I needed to download 280 packages which took up almost 700MB.
Start The GUI
By default after installing the “GNOME Desktop” group of packages, the default target will not have changed, meaning that after a reboot the GUI will not automatically be loaded. We can check the current default target as shown below.
[[email protected] ~]# systemctl get-default multi-user.target
The target is similar to the old run levels, in this case multi-user.target is equivalent to run level 3 meaning that after a reboot the GUI will not be loaded here. We instead set the default to the graphical.target which is equivalent to run level 5.
[[email protected] ~]# systemctl set-default graphical.target Removed symlink /etc/systemd/system/default.target. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target. [[email protected] ~]# systemctl get-default graphical.target
While this has changed the default target which is accessed during system boot, our current target is still the multi-user.target. We can change to the GUI by performing ‘systemctl isolate graphical.target’ which will change us to the GUI immediately.
[[email protected] ~]# systemctl isolate graphical.target
Alternatively a system reboot would also work, as all future boots should boot to the graphical target by default.
Removing The GUI
If you’ve installed the GUI on a server and realized that it was a terrible mistake, don’t worry! We can also undo this by simply using yum to remove the “GNOME Desktop” package group
[[email protected] ~]# yum groupremove "GNOME Desktop"
Carefully read through the packages that will be removed and ensure that this looks correct prior to removing packages or dependencies.