本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在控制台会话中使用 Xdcv
Amazon DCV 提供两种类型的会话:主机会话和虚拟会话。
通过虚拟会话,Amazon DCV 会启动一个专用 X 服务器实例 Xdcv,并在其中运行桌面环境。Amazon DCV 为每个虚拟会话启动一个新的 Xdcv 实例,并且每个虚拟会话都使用自己的 X 服务器实例提供的显示屏。Xdcv 二进制文件由软件包提供。nice-xdcv
通过控制台会话,Amazon DCV 可以直接捕获桌面屏幕的内容,在 Linux 上,桌面屏幕通常由系统的 X 服务器 (Xorg) 呈现。也可以将控制台会话配置为由 Xdcv 代替 Xorg 提供服务。这提供了动态调整大小和多显示器,而无需在中配置细节。xorg.conf
本主题介绍如何在 Ubuntu、 RHEL/Rocky Linux/CentOS Stream 和 Amazon Linux 2023 上进行切换。
重要
此配置仅适用于非 GPU 主机。在带有 GPU 的实例上应用这些步骤将破坏 GPU-accelerated 显示管道。
注意
这些说明假设您的系统使用 GDM(GNOME 显示管理器)。如果您使用其他显示管理器,例如 Lightdm 或 SDDM,请相应地调整命令。systemctl restart
先决条件
在为您的发行版运行命令之前,请确认以下内容:
-
nice-xdcv软件包已安装,Xdcv-console二进制文件位于/usr/bin/Xdcv-console。 -
您拥有 root 权限(
sudo在适当的情况下使用)。
注意
配置完成后,下次登录控制台时将启动会 Xdcv-backed 话,而不是标准的 Xorg 会话。
Ubuntu
在Ubuntu上,切换是通过将原始的Xorg二进制文件转移到外面并通过符号链接指向/usr/bin/Xorg来执行的。Xdcv-console
$dpkg-divert --package nice-xdcv --divert /usr/bin/Xorg.orig --rename /usr/bin/Xorg$ln -sf /usr/bin/Xdcv-console /usr/bin/Xorg$sudo systemctl restart gdm
每条命令的用途
dpkg-divert-
告诉 dpkg 该
nice-xdcv软件包拥有该路径,/usr/bin/Xorg并将现有的 Xorg 二进制文件重命名为。/usr/bin/Xorg.orig这样可以保留原始二进制文件,并防止 future Xorg 包升级覆盖您的自定义。 ln -sf-
创建或替换符号链接,以便任何正在调用的进程都能
/usr/bin/Xorg实际运行/usr/bin/Xdcv-console。 systemctl restart gdm-
重新启动 GNOME 显示管理器,使更改生效。这会终止主机上的任何活动图形会话,因此请在没有人登录控制台时运行它。
RHEL /Rocky Linux /CentOS Stream
在 RHEL-family 发行版中,该nice-xdcv软件包提供了两个以声明方式处理开关的 systemd 单元。
$systemctl enable --now xdcv-console-update.service$systemctl enable xdcv-console.path$sudo systemctl restart gdm
每条命令的用途
xdcv-console-update.service-
协调系统以用于控制台会话
Xdcv-console的单元。使用启用它会立即将其--now激活,并使其在后续启动时启动。 xdcv-console.path-
一种基于路径的单元,它会监视磁盘上的相关文件,并在软件包升级后 X 服务器配置发生更改时重新触发更新服务。启用它可确保自动重新应用 Xdcv 配置,而不是静默恢复。
systemctl restart gdm-
重新启动 GNOME 显示管理器,使更改生效。这会终止主机上的任何活动图形会话,因此请在没有人登录控制台时运行它。
Amazon Linux 2023
亚马逊 Linux 2023 使用该update-alternatives系统来管理提供哪些二进制文件/usr/bin/X。
$update-alternatives --install /usr/bin/X xdcv /usr/bin/Xdcv-console 11$sudo update-alternatives --set X /usr/bin/Xdcv-console$sudo systemctl restart gdm
每条命令的用途
update-alternatives --install-
登记
Xdcv-console为X备选方案的候选人,优先级为11。只有当备选方案处于自动模式时,优先级才重要;下一个命令会覆盖该模式。 update-alternatives --set X-
Xdcv-console显式固定X到,因此以后不会被优先级较高的候选人所取代。 systemctl restart gdm-
重新启动 GNOME 显示管理器,使更改生效。这会终止主机上的任何活动图形会话,因此请在没有人登录控制台时运行它。
验证配置
应用分发步骤后,确认 X 服务器路径现在解析为Xdcv-console:
$ls -l /usr/bin/Xorg # Ubuntu$ls -lh /usr/bin/X # RHEL/Rocky Linux/CentOS Stream$ls -l /etc/alternatives/X # Amazon Linux 2023
然后启动控制台会话并检查它是否按预期启动。如果显示管理器无法启动,请先通过 SSH 登录进行故障排除,然后再尝试其他图形登录。
正在恢复
如果你需要恢复到普通的 X 服务器,请执行以下操作:
-
Ubuntu:删除符号链接,然后运行恢复原始二
dpkg-divert --package nice-xdcv --rename --remove /usr/bin/Xorg进制文件。 -
RHEL/Rocky:
systemctl disable --now xdcv-console.path xdcv-console-update.service. -
亚马逊 Linux 2023:
update-alternatives --remove X /usr/bin/Xdcv-console,然后重启 gdm。