Как предотвратить запуск GDM при загрузке в Ubuntu?

9626
arulappan

У меня есть сервер Ubuntu (Hardy Heron), который загружается и запускает гнома. Я хотел бы сделать так, чтобы при загрузке он переходил только в текстовый режим (например, x-сервер никогда не запускается)

Я старался:

sudo update-rc.d -f gdm remove

безрезультатно ... как я могу это сделать?

11
У меня есть опасения по поводу этого вопроса, потому что заголовок задает совершенно другой вопрос, нежели реальный вопрос в основной части вопроса! (Оба ответа ниже). Это не хорошо для тех, кто ищет позже. Пожалуйста, обновите название. Mark Baker 16 лет назад 2
Может быть, я просто чего-то не понимаю, но заголовок и вопрос (по состоянию на 14 декабря 2010 г.) совпадают. Изменилось ли название или вопрос? Daniel H 13 лет назад 0
Название изменилось 6 февраля 2010 года в 15:04, отредактировано [quack quixote] (http://superuser.com/users/12786/quack-quixote). Zayne S Halsall 11 лет назад 0
Редакции вопросов можно просмотреть с помощью ссылки на дату последнего редактирования. Таким образом, для этого вопроса виджет кредитов в правом нижнем углу показывает (на момент написания), что он был последний раз отредактирован [arulappan] (http://superuser.com/users/147908/arulappan) 2 августа '12 в 6:52 - и строка даты является [ссылкой на ревизию] (http://superuser.com/posts/105581/revisions). Zayne S Halsall 11 лет назад 0
Для получения дополнительной информации см. [Stackoverflow's] (http://stackoverflow.com/) [meta site] (http://meta.stackoverflow.com/): [Как работает редактирование?] (Http: //meta.stackexchange .com / вопросы / 21788 / как-делает редактирование работа) Zayne S Halsall 11 лет назад 0

9 ответов на вопрос

7
dF.

Неразбериха с уровнем запуска, через /etc/inittabили /etc/event.d(замена inittab) или параметрами загрузки ядра не поможет. Уровень запуска по умолчанию в Ubuntu равен 2 (проверьте с помощью runlevelкоманды), и нет уровня запуска, который по умолчанию настроен на многопользовательский и текстовый режим.

На самом деле, я думаю, что ваше решение

sudo update-rc.d -f gdm remove 

должен был сработать (и он работает для меня 8.04) ... Есть ли еще скрипт с именем что-то вроде S30gdmв вашей /etc/rc2.dпапке?

это сработало, я был идиотом и, должно быть, что-то опечатал ... спасибо. 16 лет назад 1
6
jtimberman

Вам нужно сделать это:

mv /etc/rc2.d/S30gdm /etc/rc2.d/K70gdm 

Смотрите, /etc/rc2.d/README. Файлы README есть во всех каталогах /etc/rc?.d, а также /etc/init.d.

Редактировать: инструмент update-rc.d не предназначен для редактирования этих ссылок. Со страницы руководства update-rc.d:

Обратите внимание, что эта программа была разработана для использования в сценариях сопровождающего пакета и, соответственно, имеет только очень ограниченную функциональность, требуемую такими сценариями. Системным администраторам не рекомендуется использовать update-rc.d для управления уровнями выполнения. Они должны редактировать ссылки напрямую или использовать редакторы уровня запуска, такие как sysv-rc-conf и bum.

3
Doug

Просто ответ здесь для тех, кто использует Ubuntu 10.10+

Использование rcconfили sysv-rc-confотключение gdm не остановит запуск GDM при запуске.

Это связано с тем, что для управления этими службами сейчас используется «upstart» ( http://upstart.ubuntu.com/getting-started.html ).

Чтобы полностью отключить GDM и предотвратить его запуск, сделайте следующее:

sudo mv /etc/init/gdm.conf ~/gdm.conf 

(Чтобы восстановить GDM, поместите файл обратно /etc/init)

2

Я знаю, что это немного не связано, но вы пробовали серверную версию Ubuntu? Я считаю, что он устанавливается без X11 по умолчанию и является гораздо более чистой базой для сервера. Это также имеет дополнительное преимущество, позволяя загружать его очень быстро!

да, я действительно использовал версию сервера в прошлом, но я конвертирую другой компьютер с компьютера разработчика на сервер, и у меня установлен apache с несколькими модами, которые я не хочу перекомпилировать;) 16 лет назад 0
Да, старый, если он работает, не трогай это правило! :) 16 лет назад 0
2

В Ubuntu 8.04 я использовал sysv-rc-conf для удаления gdm со всех уровней запуска. После перезапуска системы X не запустился. Итак, вы должны сделать то же самое!

2

Использование sysv-rc-conf и указание gdm не загружать работает здесь с Jaunty Jackalope.

1
Gustavo Carreno

Я никогда не останавливался на внутренних настройках initd для Ubuntu, в частности, но для других версий linux он обычно находится в / etc / inittab.

Там, вверху, вы найдете строку, которая определяет уровень запуска по умолчанию. Надеюсь, у вас будет несколько комментариев, которые помогут вам решить, какой из них. Держу пари, это 3.

Ubuntu и Debian не используют inittab Martin Beckett 16 лет назад 0
Да, они делают. Чего они не делают, так это используют уровень запуска, чтобы определить, какое программное обеспечение использовать. Все 2-5 по умолчанию настроены одинаково, поэтому вы можете использовать их самостоятельно, если хотите. Mark Baker 16 лет назад 1
т.е. этот ответ является абсолютно правильным ответом на вопрос в названии. Это просто не поможет оригинальному постеру избавиться от X. Mark Baker 16 лет назад 0
0
Adam Nofsinger

Я думаю, что этот пост имеет гораздо лучшее решение для современной Ubuntu (10.X):

... загрузка с текстовым параметром ядра также предотвратит запуск диспетчера отображения, управляемого Upstart (например, gdm, kdm и lxdm) во время загрузки.

Если вы используете Grub2, то /etc/default/grubзамените:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" 

с

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash text" 

затем запустите:

sudo update-grub 

Удалить, splashчтобы отключить заставку и / или quietсделать процесс загрузки многословным. Если вы хотите создать отдельную опцию загрузки для текстового и графического режима, проверьте это .

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

0
DarthVanger

Для 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