调查在 Linux 上创建虚拟会话失败的问题 - Amazon DCV
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

调查在 Linux 上创建虚拟会话失败的问题

使用以下命令在 Linux 上创建一个虚拟会话:

$ dcv create-session session

只有在会话创建失败时,该命令才会返回错误。不过,可能会出现以下情况:最初成功创建会话,但会话在用户连接之前终止。您可能会注意到这一点,因为在您检查现有会话时(例如,使用 dcv list-sessions 命令或 dcv describe-session session),您可能找不到列出的会话。

大多数情况下,发生这种情况是因为已创建桌面会话,但会话立即失败,例如,由初始化脚本启动的应用程序之一崩溃或失败,或者缺少所需的工具之一。

如果会话创建失败,请检查以下内容:

  • 检查 /var/log/dcv/sessionlauncher.log 文件,其中包含与创建新会话进程的 dcv 组件相关的日志。

  • 检查 /var/log/dcv/dcv-session.user.session.log 文件,其中包含与 dcv 初始化脚本相关的日志。

  • 检查与会话所有者对应的主目录中的 $HOME/.xsession-errors 文件。该文件包含系统 X 会话初始化脚本生成的日志,通常包含桌面 Session Manager 或脚本调用的其他应用程序生成的日志。

  • 检查系统日志以获取有关故障系统和组件的更多信息。首先,检查 dmesg 输出(例如,如果进程失败)和 journalctl -xe 输出。

  • 使用故障防护会话进行测试,以确认该问题与使用的 Session Manager 无关。

如果仅特定用户发生故障,您也可以尝试执行以下操作:

  • 检查用户配置,特别是删除或重命名用户配置时发生什么情况。

    根据桌面环境和版本,配置目录可能是用户目录中的 .gnome.kde.config

  • 检查影响用户 PATH 或环境的特定用户配置。通常,特定用户的会话启动失败是由于框架(例如 anaconda)覆盖某些标准本机命令造成的,这可能会导致会话初始化中的 dbus 连接失败。

  • 检查权限问题。为本地 ~/.dbus~/.Xauthority 设置的错误权限(例如,它们可能由 root 而不是用户拥有)可能导致桌面会话立即终止。