Как я могу запустить lightdm на Xvfb на Raspberry Pi?

У меня есть Raspberry Pi, и я использую его в качестве сервера без головы. Но я хочу запустить X на нем. Он поставляется с lightdm, и если вы запустите его с помощью прилагаемого HDMI или video out, он работает, и я могу использовать это и x11vnc к этому, но без подключенного монитора, по умолчанию 800x600 или что-то очень маленькое. Я пробовал задавать геометрию, никакого эффекта.

Так что я решил запустить Xvfb, затем запустить lightdm, затем x11vnc весь shebang.

проблема lightdm кажется, не хочет подключаться к уже работающему X-серверу, он хочет сделать свой собственный. Хорошо, так я говорю это, чтобы запустить Xvfb вместо Х, и это не потому, что языка пытается пройти 'vt7 качестве param в X-сервер, но Xvfb не принимает виртуальный терминал как парам, потому что это не через любой терминал, это виртуальный буфер кадра.

так помоги мне? Как я могу получить lightdm (я проверил документы и параметры, ничего очевидного), чтобы правильно запустить Xvfb (без парама vt7), или заставьте его подключиться к существующему X-серверу, который уже запущен, а не пытаться запустить свой собственный.

23
задан slhck
17.11.2022 4:47 Количество просмотров материала 2722
Распечатать страницу

1 ответ

кстати, я столкнулся с той же проблемой одновременно. Также хотел запустить обезглавленный сервер с Xvfb и VNC, а не на RPi. Я нашел рабочее решение, выполнив следующие действия...

apt-get install lubuntu-core xvfb x11vnc

я понял, что все параметры конфигурации языка.конф описаны в /usr/доли/док/языка/языка.конф.gz. Поэтому взгляните на них, выполнив следующую команду.

zcat /usr/share/doc/lightdm/lightdm.conf.gz

очевидно, как вы сообщали, lightdm пытается создать свой собственный X сервер и передает некоторые аргументы, которые Xvfb не может обработать. Первым шагом для обхода этой проблемы является добавление строки 'xserver-command' в файл конфигурации lightdm /etc/lightdm / lightdm.conf (по умолчанию xserver-command=X).

[SeatDefaults]
greeter-session=lightdm-gtk-greeter
user-session=Lubuntu
xserver-command=/etc/X11/xinit/xserverrc

после этого я изменил /etc/X11/xinit / xserverrc, чтобы запустить Xvfb вместо реального X-сервера (обратите внимание, что я закомментировал исходную строку X exec, которая передает аргументы командной строки в X). Вместо того, чтобы добавить строку exec, который работает Xvfb было достаточно, чтобы получить перевод работа с Xvfb.

#!/bin/sh

#exec /usr/bin/X -nolisten tcp "$@"
exec Xvfb :0 -screen 0 1024x768x24

мне кажется, что это удобный способ обернуть команду lightdm X в подходящий скрипт-оболочку, который уже присутствует в (L)установке Ubuntu по умолчанию.

наконец, я использую VNC после ssh'ING в систему, перенаправляя порт VNC и подключаясь к перенаправленному порту на localhost с VNC-клиентом (в моем случае Mac OS Screen sharing).

ssh -L 5900:localhost:5900 user@machine 'x11vnc -localhost -display :0 -many'
7
отвечен Andreas 2022-11-18 12:35

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх