Ubuntu 16.04 LTS - как запускается X-сервер?

20

Я думал, что /usr/bin/startxскрипт используется для запуска X-сервера, но похоже, что это не так. Какой процесс или скрипт запускает X-сервер? X-сервер должен быть запущен до того, как появится приветствие lightdm, но когда именно?

Irbis
источник

Ответы:

11

/etc/init.d/lightdm запускает сервер Xserver. Сначала запускается Lightdm, затем запускается Xserver. Родительским процессом Xserver (Xorg) является lightdm (PID 25600, как показано в примере ниже). Вы можете увидеть это, выполнив:

ps -ef | grep lightdm.

root     25600     1  0 00:50 ?        00:00:00 /usr/sbin/lightdm  
root     25608 25600  2 00:50 tty7     00:00:35 /usr/lib/xorg/Xorg -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch  
root     25686 25600  0 00:50 ?        00:00:00 lightdm --session-child 12 19

Выполнение следующих команд остановит и запустит lightdm и Xserver соответственно:

sudo /etc/init.d/lightdm stop  
sudo /etc/init.d/lightdm start
stumblebee
источник
9

Загрузитесь в текстовый экран и используйте startx

Если ваша система Ubuntu загружается в текстовый экран, например, в минимальную систему или серверную систему, вы можете использовать startx для запуска xserver (и простой оконный менеджер, такой как openbox или fluxbox, или среду рабочего стола, такую ​​как gnome, kde, lxde, .. XFCE).

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

sudo apt update
sudo apt install fluxbox xinit xterm

с командой

startx

Загрузка прямо на графический рабочий стол

Если у вас есть настольная система Ubuntu (стандартная Ubuntu или одна из разновидностей сообщества Kubuntu, Lubuntu, ... Xubuntu), вам не нужно использовать startx, среда графического рабочего стола запускается автоматически (и вам не нужно запускаться startx). Если я правильно понимаю, он запускается через systemd. Смотрите, например, следующие ссылки,

wiki.archlinux.org/index.php/Systemd/User#Xorg_and_systemd

wiki.archlinux.org/index.php/xorg

Переключение между текстовым режимом и графическим режимом

Переключение между текстовым режимом и графическим режимом описано в принятом ответе по следующей ссылке

Загрузка в текстовом режиме в 16.04

Чтобы загрузить Ubuntu 16.04 Desktop без X один раз, добавьте systemd.unit = multi-user.target в командную строку linux в GRUB.

Чтобы сделать это по умолчанию, используйте

sudo systemctl set-default multi-user.target

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

sudo systemctl set-default graphical.target

Чтобы увидеть текущую цель по умолчанию,

sudo systemctl get-default
sudodus
источник
3

Вы можете прочитать о процессе загрузки здесь: http://manpages.ubuntu.com/manpages/xenial/man7/boot.7.html

Хотя в руководстве не упоминается Xserver (или X11), процесс init отвечает за запуск Xserver.

Urben
источник
1
Это не отвечает на мой вопрос.
Ирбис
0

Процесс init (PID = 1) порождает все, обычно включая x11

В 16.04 это /sbin/initиз systemd-sysv

Джо Форд
источник