我整天都在阅读(旧)指南,但我仍然对 Ubuntu 18.04 上的多座席一无所知。更糟糕的是,我只有一块具有多个输出的显卡。
唯一让我充满希望的是,loginctl list-seats
这表明我的 Ubuntu 知道座位数。
如何在多座位中设置我的机器?
编辑:loginctl 命令的输出。
请注意,并非所有东西都已连接。我想先弄清楚如何解决它,而不是直接开始。我认为每个座位都有自己的 USB 集线器(HID 设备 + 任何其他需要的设备)+ 其中一个显示器。
loginctl list-seats
SEAT
seat0
1 seats listed.
loginctl seat-status seat0
seat0
Sessions: *c1
Devices:
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1
│ input:input1 "Power Button"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0
│ input:input0 "Power Button"
├─/sys/devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1
│ usb:usb1
│ ├─/sys/devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-12/1-12:1.0/input/input11
│ │ input:input11 "iMON USB Touchscreen (15c2:0034)"
│ ├─/sys/devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-12/1-12:1.0/input/input2
│ │ input:input2 "iMON Panel, Knob and Mouse(15c2:0034)"
│ └─/sys/devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-12/1-12:1.0/rc/rc0/input3
│ input:input3 "iMON Remote (15c2:0034)"
├─/sys/devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb2
│ usb:usb2
├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0
│ [MASTER] drm:card0
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0/card0-DP-1
│ │ [MASTER] drm:card0-DP-1
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0/card0-DP-2
│ │ [MASTER] drm:card0-DP-2
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0/card0-DP-3
│ │ [MASTER] drm:card0-DP-3
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0/card0-DVI-D-1
│ │ [MASTER] drm:card0-DVI-D-1
│ └─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/card0/card0-HDMI-A-1
│ [MASTER] drm:card0-HDMI-A-1
├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.0/drm/renderD128
│ drm:renderD128
├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0
│ sound:card0 "NVidia"
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0/input12
│ │ input:input12 "HDA NVidia HDMI/DP,pcm=3"
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0/input13
│ │ input:input13 "HDA NVidia HDMI/DP,pcm=7"
│ ├─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0/input14
│ │ input:input14 "HDA NVidia HDMI/DP,pcm=8"
│ └─/sys/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0/input15
│ input:input15 "HDA NVidia HDMI/DP,pcm=9"
├─/sys/devices/pci0000:00/0000:00:07.1/0000:27:00.3/usb3
│ usb:usb3
├─/sys/devices/pci0000:00/0000:00:07.1/0000:27:00.3/usb4
│ usb:usb4
├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1
│ sound:card1 "Generic"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input10
│ │ input:input10 "HD-Audio Generic Front Headphone"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input4
│ │ input:input4 "HD-Audio Generic Front Mic"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input5
│ │ input:input5 "HD-Audio Generic Rear Mic"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input6
│ │ input:input6 "HD-Audio Generic Line"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input7
│ │ input:input7 "HD-Audio Generic Line Out Front"
│ ├─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input8
│ │ input:input8 "HD-Audio Generic Line Out Surround"
│ └─/sys/devices/pci0000:00/0000:00:08.1/0000:28:00.3/sound/card1/input9
│ input:input9 "HD-Audio Generic Line Out CLFE"
└─/sys/devices/virtual/misc/rfkill
misc:rfkill
答案1
到目前为止,多显卡是设置多座席的简单方法。它可以让您避免 Xephyr 和任何其他额外配置带来的混乱。
设置第二个座位(假设您有第二张视频卡)并不比发出以下命令更简单:
loginctl attach seat1 ....
重启后,您将看到两个登录屏幕。此后,其他所有配置通常都是偶然的。
您的主板是否支持第二个全长 PCI-E 显卡插槽?如果不支持,也并非自动取消资格。您还可以使用比特币爱好者喜欢使用的 PCI-E 1x 转接卡之一为您的机器添加 16x 插槽。我不是说您应该这样做,我只是说您可以这样做。
答案2
我同意@ezst036 对此的看法:
到目前为止,多显卡是设置多座席的简单方法。它可以让您避免 Xephyr 和任何其他额外配置带来的混乱。
但是,即使在这种“简单场景”中,我也偶然发现了与 和 组件之间的交互有关的一些问题gdm
。snap
首先logind
,如果您有 16.04 并执行 ,loginctl seat-status
您将获得有关您的座位的信息,但如果您在 18.04 中尝试执行此操作,则会抛出错误:
Could not get properties: Caller does not belong to any known session
我不知道这个问题是否相关。
为了在 Ubuntu vanilla 中实现功能性多座位配置,您可以执行以下操作:
- 安装
lightdm
:通过执行sudo apt install lightdm
,然后确保lightdm
在出现的提示中将其检查为默认登录屏幕。 - 配置以下内容
/etc/lightdm/lightdm.conf.d/multiseat.conf
(您应该创建此文件,并根据需要命名)。
[LightDM]
logind-load-seats=true
- 通过以下方式正确分配设备到座位
loginctl attach seat-1 <device>
然后您将能够重新启动并且一切都将就绪。
无需配置任何内容/etc/X11
,之前的配置将自动正确设置所有设备。
免责声明:我有两块 Radeon RX 5700,我使用的是官方驱动程序 19.30AMD 网站。我不确定我的配置是否能在其他设置中正常工作。YMMV。