24

Я хочу, чтобы моя Ubuntu 16.04 не запускала графический интерфейс при загрузке и показывала только консоль командной строки. Я попробовал следующие варианты, но ни один из них не предназначен для версии 16.04, и поэтому они, похоже, не работают - GUI запускается в любом случае:

  1. GRUB_CMDLINE_LINUX =»текст»

  2. Изменение уровня запуска по умолчанию

В идеале я также хочу иметь возможность запустить графический интерфейс, набрав команду.

5 ответов5

21

Вы можете отключить службу диспетчера дисплеев с помощью systemctl например, если ваш диспетчер lightdm запустите sudo systemctl disable lightdm.service . Это предотвратит запуск службы при загрузке.

Редактировать:

Я забыл упомянуть, как запустить графический интерфейс, это так же просто, как запуск службы sudo systemctl start lightdm.service

14

Вместо text используйте уровень запуска 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

Затем update-grub и перезагрузитесь.


Но вам действительно нужно только GRUB_CMDLINE_LINUX="3" . Для быстрого тестирования нажмите ESC во время загрузки, чтобы войти в меню загрузки grub. Затем нажмите e и найдите строку, которая определяет ядро и добавьте 3 в конце:

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

Загрузите его с помощью CTRL+x


В идеале я также хочу иметь возможность запустить графический интерфейс, набрав команду.

Один из них:

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

Проверено на Ubuntu 16.04.1 LTS.

9
  • Когда вы находитесь в GUI-режиме, это приведет вас в текстовый режим (уровень запуска 2,3,4) при перезагрузке. Вы можете получить пустой экран (без графического интерфейса пользователя), который напоминает, что нет графического интерфейса :-), введите Ctrl Alt (F1, F2, ...), чтобы использовать уровни запуска.

systemctl set-default multi-user.target

  • Это вернет вас к загрузке графического интерфейса, когда вы находитесь в текстовом режиме.

systemctl set-default graphical.target

8

Одно из следующего, как часть командной строки ядра (редактируемое через GRUB), должно работать:

  • systemd.unit=multi-user.target переопределит значение по умолчанию «graphical.target» - это, наряду с systemctl set-default, эквивалентно « уровню выполнения по умолчанию»;
  • systemd.mask=lightdm.service запрещает запуск определенной службы до тех пор, пока systemctl не откроет вручную;
  • systemd.mask=display-manager.service - то же самое;
  • rescue aka systemd.unit=rescue.target является эквивалентом "однопользовательского уровня запуска"; не для ежедневного использования, но полезно при исправлении сломанного GUI.
2

для Ubuntu 18.04 включить пользователя root

 sudo passwd

а потом

systemctl set-default multi-user.target

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .