ubuntu - Problem adding extra loginctl seat for a Multiseat headless xserver-xorg-video-dummy driver on Ubuntu bionic 18.04?
问题描述
I am trying to add an extra headless seat/session to allow LightDM to offer a headless login page for VNC users without interfering with the person using the desktop. I tried several configurations (with no discernible errors in the logs) similar to the following tutorials for an nVidia card and another adapter:
https://wiki.archlinux.org/index.php/Xorg_multiseat
https://wiki.ubuntu.com/MultiseatTeam/Instructions
However, so far the newer systemd related Xorg configuration process ignores the Xorg "dummy" driver in the examples (for a detached VNC desktop under a separate user login). Notably, the lightDM settings are loaded for the detected nVidia [Seat:card0] setup, but as the [Seat:seat4] is never polled by loginctl it's conf is never applied in LightDM.
$ls -l /tmp/.X11-unix/
srwxrwxrwx 1 root root 0 Jun 16 23:09 X0
$loginctl list-seats
SEAT
seat0
1 seats listed.
$loginctl
SESSION UID USER SEAT TTY
2 1000 pi
c1 118 lightdm seat0
$ps aux | grep X
root 6732 5.1 0.2 263360 48232 ? Sl 23:09 0:01 /usr/lib/xorg/Xorg -s 0 -dpms -keeptty :0 -config /etc/X11/xorg.conf -layout Layout0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
$ls -l /sys/class/graphics
lrwxrwxrwx 1 root root 0 Jun 16 23:09 fb0 -> ../../devices/platform/vesa-framebuffer.0/graphics/fb0
lrwxrwxrwx 1 root root 0 Jun 16 23:09 fbcon -> ../../devices/virtual/graphics/fbcon
Manual setup:
$sudo nvidia-xconfig
$sudo nano /usr/share/X11/xorg.conf.d/10-Dummy.conf
Section "Device"
Identifier "Card4"
Driver "dummy"
VideoRam 32768
Option "NoDDC" "true"
Option "IgnoreEDID" "true"
EndSection
Section "Monitor"
Identifier "Monitor4"
Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -hsync +vsync
Modeline "1280x1024_60.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync
Modeline "1024x768_60.00" 63.50 1024 1072 1176 1328 768 771 775 798 -hsync +vsync
Option "Primary" "true"
EndSection
Section "Screen"
Identifier "Screen4"
Device "Card4"
Monitor "Monitor4"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x1080_60.00" "1280x1024_60.00" "1024x768_60.00"
EndSubSection
EndSection
$sudo nano /usr/share/X11/xorg.conf.d/10-Dummy-seat4.conf
Section "ServerLayout"
Identifier "Dummy4"
Screen 4 "Screen4"
Option "Seat" "seat4"
Option "Xinerama" "0"
Option "SingleCard" "on"
EndSection
解决方案
I worked around the issue by using the power switch with a new seat udev rule: TAG=="seat", ENV{ID_FOR_SEAT}=="input-acpi-LNXPWRBN_00", ENV{ID_SEAT}="seat-9",TAG+="master-of-seat"
推荐阅读
- sonarqube - 部署 Sonarqube 到 Kubernetes 时,服务停止并抱怨 Mulesoft 插件 jar 文件不是插件
- php - 如何检查简单的 HTML 元素是否不存在?
- node.js - Telegram bot webhook 仅发送命令
- typescript - Vuetify require() with i18n 不能在 img 上工作:src
- google-cloud-dataflow - Google Cloud Dataflow 问题和“generic::data_loss”错误
- c# - 实体框架和自引用集合
- cassandra - JasperReports Studio 社区:支持 CassandraDB?
- java - FOREIGN KEY 约束在故意创建父表插入后失败(代码 787)
- c# - Blazor 无法更新用户界面
- java - 如何从 Athena 请求大型数据集,而一次不限于 1000 行