I installed Ubuntu 16.04 LTS and I was wondering, is there a way to start Ubuntu without starting the display manager (or exiting the display manager like Unity after it starts up) to basically go to the "headless" command-line mode where you just see something like:

Welcome to Ubuntu 16.04 LTS
blah blah
blah blah

john@doe$ _
  • Normally, it is advised to use the Server ISO when doing this type of a setup, if you don't need a GUI. But yes, it definitely is possible. – Thomas Ward Feb 8 '18 at 19:20
  • Thanks for the answer @ThomasWard - I'm just really confused by the difference between X, Unity, gnome-desktop, LightDM, but will do more research to figure it out. – J. Doe Feb 8 '18 at 19:40
  • X (and Xorg) are the server-client backend that provide the base-level framework for a GUI; GNOME, KDE, LightDM, et cetera are Window Managers that sit atop X. A rough analogy might be that X corresponds to the kernel, and GNOME to your chosen shell. – DopeGhoti Feb 8 '18 at 20:02

As mentioned by Thomas Ward in the comments, normally you should use the Server install ISO when you want a setup like this. If you've already got a system installed and what to convert it though, it's not too hard. The link given in the aforementioned comment has some of the best advice I"ve seen for simply disabling graphical bootup. Unfortunately, if you want to completely remove the GUI, it's a bit more complicated, since the installer for some reason does not properly mark dependency packages as automatically installed (if it did, you could just apt-get purge ubuntu-desktop && apt-get autoremove --purge and be done with it).

Now, as to the confusion you expressed in the comments about the terminology:

X is a display server. In essence, it's the bit of software that sits between all your applications and the OS itself and mediates access to the graphics and input drivers. Wayland is an example of an alternative display server. In comparison, On Windows, this component is part of the kernel instead of being independent software (because modern Windows was designed from the ground-up to use graphical interfaces.

Unity is a desktop environment. It's most of what's responsible for the different appearance of various Linux distributions graphical interfaces. In actuality, a desktop environment is not a single piece of software, but multiple separate programs which work together to provide most of the stuff that makes a desktop interface a desktop interface. More specifically, they usually include:

  • A window manager, which is responsible for controlling the placement of the windows on the screen, as well as things like how big they are, and the display of the title bars (and usually also handling of workspaces/virtual desktops).
  • A file manager, which in addition to the regular stuff you expect from a file manager is what displays icons on the desktop (and usually the desktop backgrounds, though that may be handled by a different component).
  • Some means of starting programs, usually a menu of some sort.
  • Optionally a panel, often called a taskbar in the Windows world.

Examples of alternative desktop environments include GNOME, KDE, CDE, XFCE, and LXDE, Pantheon, Sugar, Cinnamon, MATE, Enlightenment, and Budgie.

gnome-desktop is a particular component of the GNOME desktop environment, more specifically the bit that's responsible for displaying the desktop background. Unless I'm mistaken, it's also used by Unity for the same purpose.

LightDM is a display manager. It's responsible for handling the actual initial login to the system, switching users, and in some cases may be responsible for handling logging back in after the system has been locked (though this is often the job of the desktop environment or screensaver). It also handles initial startup of the display server on most systems, and the startup of the desktop environment after you log in. The display manager itself is usually what you disable if you want to boot to text mode. Alternative display managers include GDM, KDM, LXDM, SDDM, SLIM, and to a limited extent Qingy.

  • Thanks for the answer Austin. As someone new to Unix/Linux I haven't found a terribly good well-written guide that eases you into this topic "outside in", in the manner you've used above so this is helpful. – J. Doe Feb 8 '18 at 23:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.