本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Linux 亚马逊DCV服务器的先决条件
Amazon DCV 允许客户在 Linux 服务器上访问远程图形 X 会话。这会提供对相应 Linux 桌面的访问。Amazon DCV 支持两种类型的 Linux 桌面流式传输:控制台会话和虚拟会话。有关控制台会话和虚拟会话的更多信息,请参阅管理 Amazon DCV 会话。
本主题介绍如何安装在 Linux 服务器上使用 Amaz DCV on 所需的必备组件。
内容
安装桌面环境和桌面管理器
安装桌面环境和桌面管理器,改善您在 Linux 服务器DCV上使用 Amazon 的体验。
桌面环境是一种图形用户界面 (GUI),可帮助您与 Linux 操作系统进行交互。有几种桌面环境,Amazon DCV 可以与其中许多环境配合使用。桌面管理器是管理用户登录屏幕、启动和停止桌面环境会话和 X 服务器的项目。
以下选项卡式内容显示了在支持的操作系统上安装默认桌面环境和桌面管理器的步骤,还说明了如何在支持的操作系统上配置和启动 X 服务器。
禁用 Wayland 协议(GDM3仅限)
亚马逊DCV不支持 Wayland 协议。如果您使用的是GDM3桌面管理器,则必须禁用 Wayland 协议。如果您未使用GDM3,请跳过此步骤。
禁用 Wayland 协议
-
使用常用的文本编辑器打开以下文件。
-
RHEL、CentOS 和 SUSE Linux Enterprise 15.x
/etc/gdm/custom.conf
-
Ubuntu 18.x/20.x/22.x
/etc/gdm3/custom.conf
-
-
在
[daemon]
部分中,将WaylandEnable
设置为false
。[daemon] WaylandEnable=false
-
重新启动 GDM 服务。
-
RHEL和 CentOS
$
sudo systemctl restart gdm -
Ubuntu 18.x/20.x/22.x
$
sudo systemctl restart gdm3 -
SUSELinux 企业版 15.x
$
sudo systemctl restart xdm
-
配置 X 服务器
如果您打算使用控制台会话或GPU共享,则必须确保您的 Linux 服务器具有正确配置且正在运行的 X 服务器。
注意
如果您打算在不GPU共享的情况下使用虚拟会话,则不需要 X 服务器。
X 服务器程序包通常作为桌面环境和桌面管理器的依赖项安装。我们建议您将 X 服务器配置为当 Linux 服务器启动时自动启动。
要在 CentOS、Rocky Linux RHEL、Amazon Linux 2、Ubuntu 18.x、20.x、22.x 和 Linux Enterprise 12.x、15.x 上配置和启动 X 服务器:SUSE
将 X 服务器配置为当 Linux 服务器启动时自动启动。
$ sudo systemctl get-default
如果命令返回
graphical.target
,则表明 X 服务器已配置为自动启动。继续下一步。如果该命令返回
multi-user.target
,则 X 服务器未配置为自动启动。执行下面的 命令:$ sudo systemctl set-default graphical.target
启动 X 服务器。
$ sudo systemctl isolate graphical.target
验证 X 服务器是否正在运行。
$ ps aux | grep X | grep -v grep
下面显示 X 服务器在运行时的示例输出。
root 1891 0.0 0.7 277528 30448 tty7 Ssl+ 10:59 0:00 /usr/bin/Xorg :0 -background none -verbose -auth /run/gdm/auth-for-gdm-wltseN/database -seat seat0 vt7
安装 glxinfo 实用程序
glxinfo 实用程序提供关于您的 Linux 服务器的 OpenGL 配置的信息。该实用程序可用于确定您的 Linux 服务器是否配置为支持 OpenGL 硬件或软件渲染。它提供有关驱动程序和支持的扩展的信息。
glxinfo 实用程序是作为 GL 的软件包依赖项DCV安装的。因此,如果你安装了 DCV GL,那么你的 Linux 服务器上已经安装了 glxinfo 实用程序。
验证 OpenGL 软件渲染
在非 GPU Linux 服务器上,只有在使用 Mesa 驱动程序的软件渲染模式下才支持 OpenGL。如果您使用的是非 GPU Linux 服务器并打算使用 OpenGL,请确保在 Linux 服务器上安装并正确配置 Mesa 驱动程序。
注意
这仅适用于非 GPU Linux 服务器。
验证 OpenGL 软件渲染是否可用
确保 X 服务器正在运行,并使用以下命令。
$
sudo DISPLAY=:0 XAUTHORITY=$(ps aux | grep "X.*\-auth" | grep -v grep | sed -n 's/.*-auth \([^ ]\+\).*/\1/p') glxinfo | grep -i "opengl.*version"
下面显示了 OpenGL 软件渲染可用时的示例输出:
OpenGL core profile version string: 3.3 (Core Profile) Mesa 17.0.5 OpenGL core profile shading language version string: 3.30 OpenGL version string: 3.0 Mesa 17.0.5 OpenGL shading language version string: 1.30 OpenGL ES profile version string: OpenGL ES 3.0 Mesa 17.0.5 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
为显卡实例安装GPU驱动程序
安装和配置NVIDIA驱动程序
对于配备专用的 Linux 服务器 NVIDIAGPU,请确保安装并正确配置了相应的NVIDIA驱动程序。有关如何在 Amazon EC2 Linux 实例上安装NVIDIA驱动程序的说明,请参阅亚马逊EC2用户指南中的在 Linux 服务器上安装NVIDIA驱动程序。
注意
-
这仅适用于带有NVIDIAGPUs的 Linux 服务器。
-
每个GPU安装的GRID驱动程序最多支持四台 4K 显示器。每个GPU安装的游戏驱动程序仅支持一台 4K 显示器。
在 Linux 服务器上安装NVIDIA驱动程序后,更新xorg.conf
。
生成更新的 xorg.conf
-
运行以下命令。
$
sudo nvidia-xconfig --preserve-busid --enable-all-gpus如果您使用的是 G3、G4 或 G5 A EC2 mazon 实例,并且想要使用多显示器控制台会话,请包含参数。
--connected-monitor=DFP-0,DFP-1,DFP-2,DFP-3
该参数如下所示。$
sudo nvidia-xconfig --preserve-busid --enable-all-gpus --connected-monitor=DFP-0,DFP-1,DFP-2,DFP-3注意
确保您的服务器没有旧
/etc/X11/XF86Config
文件。如果服务器具有该文件,则nvidia-xconfig
将更新该配置文件,而不是生成所需的/etc/X11/xorg.conf
文件。运行以下命令可删除旧XF86Config
文件:sudo rm -rf /etc/X11/XF86Config*
-
重新启动 X 服务器以使更改生效。
-
$
sudo systemctl isolate multi-user.target$
sudo systemctl isolate graphical.target
-
验证您是否NVIDIAGPU支持基于硬件的视频编码
确保它支持NVENC编码,并且其计算能力大于或等于 3.0,对于 Ubuntu 20,或者大于或等于 3.5。
要验证NVENC支持,请参阅NVIDIA视频编码和解码 Support Matri GPU
如果您NVIDIAGPU不支持NVENC编码或者它不具备所需的计算能力,则使用基于软件的视频编码。
验证 OpenGL 硬件渲染是否可用
使用以下命令可确保 X 服务器正在运行。
$
sudo DISPLAY=:0 XAUTHORITY=$(ps aux | grep "X.*\-auth" | grep -v grep | sed -n 's/.*-auth \([^ ]\+\).*/\1/p') glxinfo | grep -i "opengl.*version"
下面显示了 OpenGL 硬件渲染可用时的示例输出。
OpenGL core profile version string: 4.4.0 NVIDIA 390.75 OpenGL core profile shading language version string: 4.40 NVIDIA via Cg compiler OpenGL version string: 4.6.0 NVIDIA 390.75 OpenGL shading language version string: 4.60 NVIDIA OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 390.75 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
安装和配置 AMD 驱动程序
已连接AMDGPU的实例(例如 G4aD 实例)必须安装相应的AMD驱动程序。有关如何在兼容的 Amazon EC2 实例上安装AMDGPU驱动程序的说明,请参阅在 Linux 实例上安装AMD驱动程序。
有关 Amazon EC2 G4ad 实例的更多信息,请参阅全新 Amazon EC2 G4ad 实例博客文章的深入研究
为非GPU实例安装XDummy驱动程序
安装和配置XDummy驱动程序
要在没有专用控制台的 Linux 服务器上使用控制台会话GPU,请确保安装并正确配置 Xdummy 驱动程序。该XDummy驱动程序允许 X 服务器在不存在真实GPU帧缓冲区时使用虚拟帧缓冲区运行。
注意
-
如果您打算使用虚拟会话,则不需要这样做。
-
该XDummy驱动程序只能支持其配置中定义的分辨率。
在 Linux 服务器上安装XDummy驱动程序后,更新xorg.conf
。
要在 xorg.c XDummy onf 中进行配置
-
使用常用的文本编辑器打开
/etc/X11/xorg.conf
文件。 -
将以下部分添加到配置中。
Section "Device" Identifier "DummyDevice" Driver "dummy" Option "UseEDID" "false" VideoRam 512000 EndSection Section "Monitor" Identifier "DummyMonitor" HorizSync 5.0 - 1000.0 VertRefresh 5.0 - 200.0 Option "ReducedBlanking" EndSection Section "Screen" Identifier "DummyScreen" Device "DummyDevice" Monitor "DummyMonitor" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Virtual 4096 2160 EndSubSection EndSection
注意
提供的配置是一个示例。您可以添加更多模式并设置不同的
virtual
分辨率。您还可以配置多个虚拟显示器。 -
重新启动 X 服务器以使更改生效。
$
sudo systemctl isolate multi-user.target$
sudo systemctl isolate graphical.target