本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Linux NICE DCV 服务器的先决条件
NICE DCV 允许客户端访问 Linux 服务器上的远程图形 X 会话。这提供了对相应的 Linux 桌面的访问权限。NICE DCV 支持两种类型的 Linux 桌面流:控制台会话和虚拟会话。有关控制台和虚拟会话的更多信息,请参阅管理 NICE DCV 会话。
本主题介绍如何准备好必需的先决条件以在 Linux 服务器上使用 NICE DCV。
目录
安装桌面环境和桌面管理器
安装一个桌面环境和桌面管理器,改善您在 Linux 服务器上使用 NICE DCV 的体验。
桌面环境是一个图形用户界面 (GUI),有助于您与 Linux 操作系统交互。桌面环境有很多,NICE DCV 可与其中的大部分协作。桌面管理器是管理用户登录屏幕、启动和停止桌面环境会话和 X 服务器的项目。
以下选项卡式内容显示了在支持的操作系统上安装默认桌面环境和桌面管理器的步骤,以及如何在支持的操作系统上配置和启动 X 服务器。
禁用 Wayland 协议(仅限 GDM3)
NICE DCV 不支持 Wayland 协议。如果您使用的是 GDM3 桌面管理器,则必须禁用 Wayland 协议。如果您不使用 GDM3,请跳过此步骤。
禁用Wayland 协议
-
使用首选文本编辑器打开以下文件。
-
RHEL 8.x 和 SUSE Linux EnCentOS prise 15.x
/etc/gdm/custom.conf
-
Ubuntu 22.x
/etc/gdm3/custom.conf
-
-
在
[daemon]
部分,setWaylandEnable
到false
.[daemon] WaylandEnable=false
-
重新启动 GDM 服务。
-
RHEL 8.x 和 CentOS 8.x
$
sudo systemctl restart gdm -
Ubuntu 22.x
$
sudo systemctl restart gdm3 -
SUSE Linux Enterpris
$
sudo systemctl restart xdm
-
配置 X 服务器
如果要使用控制台会话或 GPU 共享,则必须确保 Linux 服务器具有一个配置正确且正在运行的 X 服务器。
如果您打算使用不带 GPU 共享的虚拟会话,则不需要 X 服务器。
X 服务器程序包通常作为桌面环境和桌面管理器的依赖项安装。我们建议您将 X 服务器配置为当 Linux 服务器启动时自动启动。
在 RHEL 7.x/8.x、CentOS 7.x/8.x、Rocky Linux、Amazon Linux 2、Ubuntu 18.x、20.x、22.x 和 SUSE Linux Enterprise 12.x、15.x 上配置和启动 X 服务器:
将 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 实用程序作为 DCV GL 的程序包依赖项安装。因此,如果您安装了 DCV GL,则 glxinfo 实用程序已随之安装在您的 Linux 服务器上。
安装 glxinfo 实用程序
运行以下 命令:
-
RHEL 7.x/8.x, CentOs 7.x/8.x 和亚马逊 Linux 2
$
sudo yum install glx-utils -
Ubuntu 18.x/20.x/22.x
$
sudo apt install mesa-utils -
SUSE Linux Enterprise 12.x
$
sudo zypper in Mesa-demo-x
验证 OpenGL 软件渲染
在非 GPU 的 Linux 服务器上,仅在软件渲染模式下使用 Mesa 驱动程序支持 OpenGL。如果您使用非 GPU 的 Linux 服务器并打算使用 OpenGL,请确保 Mesa 驱动程序已安装在 Linux 服务器上并正确配置。
这仅适用于非 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 驱动程序
对于拥有专用 NVIDIA GPU 的 Linux 服务器,请确保相应的 NVIDIA 驱动程序已安装且正确配置。有关如何在 Amazon EC2 Linux 实例上安装 NVIDIA 驱动程序的说明,请参阅在 Linux 服务器上安装 NVIDIA 驱动程序中的Amazon EC2 于 Linux 实例.
-
这仅适用于拥有 NVIDIA GPU 的 Linux 服务器。
-
GRID 驱动程序支持每个 GPU 四个 4K 显示器。每个安装的 GPU 游戏驱动程序仅支持一个 4K 显示器。
在 Linux 服务器上安装 NVIDIA 驱动程序后,更新 NVIDIA 驱动程序的xorg.conf
.
生成更新的 xorg.conf
-
运行以下 命令。
sudo nvidia-xconfig --preserve-busid --enable-all-gpus
如果您使用的是 G3 或 G4 Amazon EC2 实例,并且要使用多显示器控制台会话,请将
--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 服务器以使更改生效。
-
RHEL 7.x, s, s, CentOs 7.x、Amazon Linux 2、Ubuntu 2 和 SUSE Linux Enterprise 12.x
$
sudo systemctl isolate multi-user.target$
sudo systemctl isolate graphical.target
-
验证您的 NVIDIA GPU 是否支持基于硬件的视频编码
确保它支持 NVENC 编码,并且它具有大于或等于 3.0 的计算能力,或大于或等于 Ubuntu 20 的 3.5。
要验证 NVENC 支持,请参阅NVIDIA 视频编码和解码 GPU Support 列表
如果您的 NVIDIA GPU 不支持 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 驱动程序
已挂载 AMD GPU 的实例(如 G4ad 实例)必须安装相应的 AMD 驱动程序。有关如何在兼容的 Amazon EC2 实例上安装 AMD GPU 驱动程序的说明,请参阅在 Linux 实例上安装 AMD 驱动程序.
有关 Amazon EC2 G4ad 实例的更多信息,请参阅深入了解新的 Amazon EC2 G4ad 实例
为非 GPU 实例安装 xDummy 驱动程序
安装和配置 xDummy 驱动程序
要在没有专用 GPU 的 Linux 服务器上使用控制台会话,请确保 Xdummy 驱动程序已安装且正确配置。xDummy 驱动程序允许 X 服务器在没有真正的 GPU 时使用虚拟帧缓冲区运行。
-
如果您打算使用虚拟会话,则不需要此操作。
-
xDummy 驱动程序只能支持在其配置中定义的分辨率。
安装 xDummy 驱动程序
运行以下 命令:
-
RHEL 7.x/8.x, CentOs 7.x/8.x 和亚马逊 Linux 2
$
sudo yum install xorg-x11-drv-dummy -
Ubuntu 18.x/20.x/22.x
$
sudo apt install xserver-xorg-video-dummy -
SUSE Linux Enterprise 12.x
$
sudo zypper in xf86-video-dummy
在 Linux 服务器上安装 xDummy 驱动程序后,更新xorg.conf
.
在 xorg.conf 中配置 xDummy
-
打开
/etc/X11/xorg.conf
使用首选文本编辑器。 -
将以下部分添加到配置。
Section "Device" Identifier "DummyDevice" Driver "dummy" Option "ConstantDPI" "true" Option "IgnoreEDID" "true" Option "NoDDC" "true" VideoRam 2048000 EndSection Section "Monitor" Identifier "DummyMonitor" HorizSync 5.0 - 1000.0 VertRefresh 5.0 - 200.0 Modeline "1920x1080" 23.53 1920 1952 2040 2072 1080 1106 1108 1135 Modeline "1600x900" 33.92 1600 1632 1760 1792 900 921 924 946 Modeline "1440x900" 30.66 1440 1472 1584 1616 900 921 924 946 ModeLine "1366x768" 72.00 1366 1414 1446 1494 768 771 777 803 Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 Modeline "1024x768" 18.71 1024 1056 1120 1152 768 786 789 807 EndSection Section "Screen" Identifier "DummyScreen" Device "DummyDevice" Monitor "DummyMonitor" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1920x1080" "1600x900" "1440x900" "1366x768" "1280x800" "1024x768" virtual 1920 1080 EndSubSection EndSection
注意 提供的配置就是一个示例。你可以添加更多模式,并设置不同的模式
virtual
解析。您还可以配置多个虚拟监视器。 -
重新启动 X 服务器以使更改生效。
-
RHEL 7.x, s, s, CentOs 7.x、Amazon Linux 2、Ubuntu 2 和 SUSE Linux Enterprise 12.x
$
sudo systemctl isolate multi-user.target$
sudo systemctl isolate graphical.target
-