

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

# 在 Linux 上创建故障防护虚拟会话
<a name="creating-linux-failsafe-virtual-session-creation"></a>

 要验证会话创建失败是否与桌面环境启动相关，一种常见的策略是创建最小会话。我们将该会话称为“故障防护”会话。如果创建的故障防护会话正常工作，我们可以推断您的正常会话失败是由于默认系统桌面环境无法启动。相反，如果故障防护会话也失败，则问题更有可能与 Amazon DCV 服务器设置有关。

 故障防护会话通常由仅包含简单窗口管理器和终端的桌面会话组成。这样，用户就可以检查是否存在与使用的特定会话环境（通常是 gnome 或 KDE）相关的会话创建问题。

 要创建故障防护会话，您需要为用户创建一个初始化脚本，其中包含以下内容：

```
#!/bin/sh
metacity &
xterm
```

 这会启动 `metacity` 窗口管理器并启动 `xterm` 终端，在终止 `xterm` 进程时，会话也会立即终止。

您可以使用所选的其他 Session Manager 或终端，但前提是它们在系统上可用。

**注意**  
您必须确保脚本不会立即终止。为此，您需要在脚本结束时启动一个不会立即终止的程序。在终止最后一个命令（该示例中的 `xterm`）时，也会终止初始化会话。同时，在窗口管理器之后启动另一个工具时，您需要确保它在后台运行（通过添加该示例中的 `&`），以确保调用下一个命令。

 然后，您需要确保可以执行初始化脚本：

```
$ chmod a+x {{init.sh}}
```

 要从用户 Shell 中使用指定的初始化脚本创建会话，请运行以下命令，其中 `init.sh` 是以前创建的脚本：

```
$ dcv create-session dummy --init {{init.sh}}
```

 要以超级用户身份为另一个用户创建会话，您可以改为运行以下命令：

```
$ sudo dcv create-session test --user {{user}} --owner {{user}} --init {{init.sh}}
```

 最后，您可以启动一个测试应用程序，例如 `dcvgltest`（仅在安装了 `nice-dcv-gltest` 软件包时）或 `glxgears`，以验证 OpenGL 或任何其他应用程序是否正常工作。