Як відключити автозапуск X сервера в Debian Jessie?


39

У мене віддалена машина під керуванням Debian 8 (Jessie) із встановленим lightdm. Я хочу, щоб він запускався в режимі без графічного інтерфейсу, але я не хочу видаляти всі речі, пов’язані з X, щоб все-таки мати можливість запускати його, хоча SSH з -Xпараметром. Тож як відключити автозапуск X сервера, не видаляючи його?

Я спробував systemctl stop lightdm, він зупиняє lightdm, але він запускається знову після перезавантаження. Я також спробував systemctl disable lightdm, але в принципі нічого не робить. Він перейменовує сценарії lightdm у /etc/rc*.dкаталогах, але він все ще починається після перезавантаження, і що я роблю неправильно? І я не можу просто update-rc.d lightdm stop, тому що це застаріле і не працює.


2
Запуск X-файлів через ssh не вимагає встановлення на сервері X-сервера. (Для цього просто потрібні бібліотеки клієнтів X ). Ви дійсно хочете встановити X-сервер? [AFAIK, ви знайшли помилку - відключення повинно було працювати. Звичайно, це навряд чи відповідь ...]
derobert

@derobert О, так ... я думаю, що мені в цьому випадку не потрібен X-сервер. Це все-таки більше рішення, ніж рішення, але спасибі. Чи можу я безпечно видалити lightdm та всі пакети xorg-server- * або мені слід щось зберігати, наприклад, xorg-server-input- * або відеодрайвери?
kurogetsusai


@kurogetsusai ви можете видалити lightdm та xorg-server- *. Вам дійсно просто потрібно зберігати xauth(рекомендується openssh-server) і будь-які бібліотеки, від яких ваші X-клієнти залежать. Можливо, вам також потрібні шрифти.
дероберт

Відповіді:


81

Відключення не працювало, тому що /etc/X11/default-display-managerлогіка Debian закінчується, переосмислюючи його.

Для того щоб зробити завантаження тексту за замовчуванням у systemd (незалежно від того, який дистрибутив, насправді):

systemctl set-default multi-user.target

Щоб повернутися до завантаження в GUI,

systemctl set-default graphical.target

Я підтвердив, що ці роботи над моїм Джессі VM і Slashback підтвердили його і на Stretch.

PS: Насправді вам не потрібен X-сервер на вашій машині для запуску X-клієнтів через ssh. Сервер X потрібен лише там, де знаходиться дисплей (монітор).


2
+1 для вказівки X не потрібно запускати клієнтів X через SSH
jlh

Працює над моїм Stretch VM.
Slashback

працює, але все ще є термін xterm, його не можна позбутися.
ransh

@ransh Здається, що вам слід задати власне запитання. Посилайтеся на це у своєму запитанні, а також поясніть, що ви маєте на увазі під ним, - я не впевнений, як у вас все ще з’являється xterm, якщо X не починається. Також все, що може відрізнятися від вашої системи.
derobert

1
ви можете користувачу systemctl отримати за замовчуванням, щоб знати, що є поточним. дуже корисний для віддаленого сервера.
Саді

4

ви також можете додати systemd.unit=multi-user.targetдо командного рядка ядра, якщо ви не можете отримати доступ до запущеної системи.


2

Я мало знаю про Debian, але на моєму ноутбуці Ubuntu 14.04 ось стандартна процедура, яку я використовую, коли хочу відключити X і завантажуватись command promptдля усунення несправностей:

  1. Відредагуйте файл /etc/default/grubу режимі суперрузера та встановіть GRUB_CMDLINE_LINUX_DEFAULT="text"

За бажанням також коментуйте цей рядок: #GRUB_TERMINAL=console а потім виконайте sudo update-grub. Машина завантажиться в текстовому режимі.

  1. Щоб запустити графічний інтерфейс звідти, ви sudo service lightdm startв деяких випадках виконайте #cd може бути gdm або startx

Джерело: https://askubuntu.com/questions/52089/how-do-i-boot-to-a-command-line-interface-instead-of-a-gui


Не працювало в Ubuntu 16.04. Він все ще завантажується автоматично до гнома.
Juha Untinen

Ви спробували коментувати, GRUB_TERMINAL=consoleа також оновити груб?
Prahlad Yeri

Так. Мені довелося це зробити, про що йдеться у прийнятій відповіді:systemctl set-default multi-user.target
Juha Untinen

0

Спробуйте виконати таку команду:

echo  "manual" | sudo tee -a /etc/init/lightdm.override

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.