I want my Ubuntu 16.04 to not start GUI on boot and show command line console only. I have tried the following recipies but none of them are for version 16.04 and so they do not seem to work — GUI starts anyway:

  1. GRUB_CMDLINE_LINUX=”text”

  2. Changing the default runlevel

Ideally I also want to be able to start GUI by typig a command.

share|improve this question
up vote 11 down vote accepted

You could disable the display manager service with systemctl for example if your display manager is lightdm the run sudo systemctl disable lightdm.service. This will prevent the service from starting at boot.

Edit:

I forgot to mention how to start the GUI, Its as simple as starting the service sudo systemctl start lightdm.service

share|improve this answer
    
This worked for me on 16.04 on a arm board. Thanks. :) – wojci Nov 9 '16 at 18:51

One of the following, as part of the kernel command line (editable via GRUB), should work:

  • systemd.unit=multi-user.target will override the default of "graphical.target" – this, along with systemctl set-default, is the equivalent of "default runlevel";
  • systemd.mask=lightdm.service will forbid a specific service from starting, until manually systemctl unmask'd later;
  • systemd.mask=display-manager.service – same;
  • rescue aka systemd.unit=rescue.target is the equivalent of "single-user runlevel"; not for daily use, but useful when fixing broken GUI.
share|improve this answer
    
it would be useful to mention how you return to normality from that "emergency setting" . – nyxee Aug 19 '17 at 2:27
1  
For the benefit of others, the actual CLI command you want is systemctl set-default multi-user.target (and I believe systemctl set-default graphical.target would reset it) – Andrea Sep 17 '17 at 20:19
    
That's only if you want it semi-permanent, and can reach a shell in the first place. The main post has nothing to do with CLI commands. – grawity Sep 17 '17 at 22:08

Instead of text use runlevel 3:

GRUB_CMDLINE_LINUX="3"

# To remove all the fancy graphics you need to get rid of `splash`.
GRUB_CMDLINE_LINUX_DEFAULT=”quiet”

# Uncomment to disable graphical terminal (grub-pc only) 
GRUB_TERMINAL=console

Then update-grub and reboot.


But you really only need GRUB_CMDLINE_LINUX="3". For quick test hit ESC during booting to get into the grub boot menu. Then press e and find the line which specifies kernel and add 3 at the end:

 linux /vmlinuz root=/dev/mapper/ubuntu ro 3

Boot it with CTRL+x


Ideally I also want to be able to start GUI by typig a command.

One of these:

$ sudo telinit 5
$ sudo service lightdm restart
$ sudo systemctl start lightdm

Tested on Ubuntu 16.04.1 LTS.

share|improve this answer
    
Replacing "text" by "3", worked for me ! Very efficient ! Thanks – ThomasGuenet Jan 26 '17 at 17:02
    
hi. the answer looks nice but its hard to understand. I just Ideally need one command to boot into text mode, do what I need, and go back into normal desktop mode. – nyxee Aug 19 '17 at 2:29
    
@nyxee My answer has 3 sections. Follow the second: "For quick test hit..." – A.D. Aug 19 '17 at 6:29
    
I appreciate the information in your post. by the time people look for this information, they are normally exhausted with other options. I gave an example of a simple answer below. – nyxee Aug 19 '17 at 23:32
    
Nice answer. I'm just used to post longer answers with a lot of information so we all can learn more. And also I'm familiar with grub cmd line options so it's faster for me to add 3 and I'm good to go + it's multi-distro solution :) – A.D. Aug 20 '17 at 16:40
  • When in GUI-mode, this will take you to text-mode (runlevel 2,3,4) on reboot. You may get a blank screen (no-gui) which is a reminder that there's no GUI :-), enter ctrlalt(F1,F2,...) to use the runlevels.

systemctl set-default multi-user.target

  • This will take you back to GUI boot when you are in text-mode.

systemctl set-default graphical.target

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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