Как отключить автоматический запуск GDM?


11

После установки Ubuntu Server 12.04 я установил Xubuntu только для того, чтобы иметь минимальный графический интерфейс:

sudo apt-get install x-window-system-core
sudo apt-get install --no-install-recommends xubuntu-desktop gparted

Но теперь я хочу начать X только в определенных случаях. До 12.04 я просто выдаю:

sudo update-rc.d -f gdm remove

Но эта команда больше не работает.

Как я могу остановить X от init в Ubuntu 12.04? И как мне начать, когда мне это нужно?

Я пробовал оба этих вопроса, но у меня нет gdm.conf:


Итак, у вас был рабочий стол Ubuntu, после установки Xubuntu, но вы не хотите использовать графический сеанс Xubuntu по умолчанию, а хотите запускать X только вручную?
— Белаква

Спасибо + Хорхе Кастро. Я уже читал обе статьи раньше, но обе работают на gdm.conf, но у меня нет конфигурации gdm на этом поле.
— josircg

Спасибо за ответ белаква. Это сервер Ubuntu. Это именно то, что я хочу: начать X только в определенных случаях.
— josircg

Мне интересно, у Xubuntu нет gdm.conf - это должно быть корнем всех моих вопросов.
— josircg

Ответы:


14

В последних версиях Ubuntu gdmбыл заменен на lightdm- вот почему у вас нет gdm.conf. Чтобы настроить lightdmзапуск вручную, создайте файл переопределения для его конфигурации init:

echo 'manual' | sudo dd of=/etc/init/lightdm.override

(это просто создает файл с именем /etc/init/lightdm.override, содержащий одну строку с надписью manual)

Таким образом, lightdm будет запущен только при вызове:

sudo service lightdm start

и остановить это

sudo service lightdm stop

3
Не проще ли будет просто ввести echo manual >> /etc/init/lightdm.overrideс правами root?
— Брэден Бест

4
@ B1KMusic: конечно; но затем вы должны выполнить дополнительную команду, чтобы получить корневую оболочку. Я предпочитаю использовать sudo и запускать абсолютное минимальное количество материала как привилегированный пользователь (в этом случае, запуск от имени пользователя bashroot, ddа не от имени пользователя root)
— Джереми Керр

Это глупая причина использовать такой мощный инструмент, как dd. Это довольно легко потрогать пальцем (как нажатие на вкладку в середине света) и ударить важный файл.
— Роб Рассел

@RobRussell: чем это отличается от предоставления имени файла для любой команды? Преимущество использования ddздесь состоит в том, что вы запускаете только один (и простой) процесс от имени пользователя root, а не целую оболочку.
— Джереми Керр

Это отличается тем, что дд может иметь очень разные результаты в зависимости от ошибки, которую они делают. Цель состоит в том, чтобы вставить строку текста в файл. Для этого созданы текстовые редакторы. Если пользователь следует этим инструкциям, он не увидит файл, когда вы закончите писать. Если они хотят вернуться и отредактировать этот файл или просмотреть его содержимое, им придется использовать совершенно другую команду. Я думаю, что большинство людей подумают об использовании здесь редактора (nano, gedit, vi и т. Д.).
— Роб Рассел

17

Для Ubuntu 18.04 это работает для меня:

Отключить gdm
Это предотвратит загрузку gdm при загрузке и входе через консоль.

systemctl set-default multi-user.target

Используя этот метод, gdmвсе еще можно запустить вручную сsystemctl start gdm

Проверьте systemdзначение по умолчанию с

systemctl get-default

Обычно это будет graphical.targetи может быть отменено сsystemctl set-default graphical.target

Источник: https://wiki.debian.org/GDM#systemd


4

просто хочу поделиться, может быть, это станет полезным для любого.

Я установил Ubuntu Server 12.04 и позже установил графический интерфейс kubuntu-desktop

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

/etc/default/grub.. делая запись GRUB_CMDLINE_LINUX_DEFAULT="text"вместо"quiet splash"

update-grub

update-rc.d -f ldm remove
update-rc.d -f kdm remove
update-rc.d -f gdm remove

а также

echo 'manual' | sudo tee /etc/init/lightdm.override

Ничего не получалось. Затем я отредактировал /etc/init/kdm.confи добавил 2 уровня запуска по умолчанию и уровень запуска [! 026]

stop on runlevel [0126]
#================================================================
#start on ((filesystem
#           and runlevel [!026]
#           and started dbus
#           and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
#                or stopped udev-fallback-graphics))
#          or runlevel PREVLEVEL=S)
#
#stop on runlevel [0126]
#================================================================

Это сработало.


Был такой же опыт. Это также сработало на /etc/init/gdm.conf
— Донн Ли

2

Я установил Ubuntu Server 12.04 на нетбук, главным образом потому, что я больше поклонник CLI, чем GUI, но хотел легкий GUI для мелких вещей. Я установил LXDE, а не Lubuntu, но он запустил LXDM, менеджер входа в систему для LXDE. Я просмотрел все и перепробовал много вещей, чтобы остановить загрузку LXDE. Посмотрев на этот вопрос и ответ, я нашел хороший способ остановить его для LXDE.

Вместо добавления файла, похожего на lightdm.override, я искал в / etc / init и нашел файл с именем lxdm.conf. Посмотрев файл, в основном потому, что мне было любопытно, я обнаружил, что это тот файл, который мне нужен или не нужен. После закрытия файла я переименовал его

    sudo mv /etc/init/lxdm.conf /etc/init/lxdm.conf.bak

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

Я не знаю о других DE, но это сработало для меня с LXDE.


1

Проверьте systemctl get-default.

Если вывод graphical.target, то установите его с multi-user.targetпомощью systemctl set-default:

systemctl set-default multi-user.target

Ссылка на эту ссылку для более подробной информации о systemd-target: 10.3. Работа с Systemd Targets


0

Следующее для Ubuntu Server 12 LTS

Сначала вам нужно открыть реальный термин с CTRL+ALT F1

авторизоваться

Остановите GDM с:

$ sudo service gdm stop

Удалите gdm, он вам вообще не нужен на сервере.

$ sudo apt-get remove gdm 

Установите следующий уровень загрузки с помощью.

$ sudo telinit 3

Без gdm вам потребуется установить xinit, если вы все еще сможете запускать приложения на основе графического интерфейса без оконного менеджера gdm.

$ sudo apt-get install xinit

Перезагрузитесь до уровня запуска 3.

$ sudo reboot

Для запуска графического интерфейса или рабочего стола после перезагрузки сделайте.

$ startx 

Это начнет вашу сессию гнома как обычно.

Когда закончите, просто выйдите из своего рабочего стола и вернитесь к уровню 3.

Также теперь вы можете запускать отдельные приложения без рабочего стола, например:

$ startx nautilus

или привилегированный с

$ startx sudo synaptic
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.