

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 管理作用中的 Amazon DCV 工作階段
<a name="managing-running-session"></a>

用戶端登入並開始使用 DCV 工作階段後，工作階段會被視為作用中。當工作階段處於作用中狀態時，您仍然可以執行特定管理任務。本節提供在用戶端仍在使用時管理這些工作階段參數所需的資訊。

**Topics**
+ [管理工作階段儲存體](managing-session-storage.md)
+ [管理工作階段授權](managing-session-perms.md)
+ [管理工作階段顯示配置](managing-session-display.md)
+ [管理工作階段名稱](managing-session-name.md)
+ [尋找和停止閒置工作階段](stop-idle-sessions.md)

# 管理 Amazon DCV 工作階段儲存
<a name="managing-session-storage"></a>

工作階段儲存體是 Amazon DCV 伺服器上的目錄，用戶端可在連線至 Amazon DCV 工作階段時存取。

如果在 Amazon DCV 伺服器上啟用工作階段儲存，您可以使用 `dcv set-storage-root`命令來指定伺服器上要用於工作階段儲存的目錄。如需在 Amazon DCV 伺服器上啟用工作階段儲存體的詳細資訊，請參閱 [啟用工作階段儲存體](manage-storage.md)。

若要設定工作階段儲存路徑，請使用 `dcv set-storage-root`命令並指定工作階段 ID 和要使用的目錄路徑。

**Topics**
+ [語法](#managing-session-storage-syntax)
+ [選項](#managing-session-storage-options)
+ [範例](#session-storage-example)

## 語法
<a name="managing-session-storage-syntax"></a>

```
dcv set-storage-root --session session_id /path_to/directory
```

對於目錄路徑，您可以使用 `%home%`來指定目前登入之使用者的主目錄。例如，在 Windows 伺服器上，`%home%/storage/` 路徑會解析為 `c:\Users\username\storage\`。在 Linux 伺服器上會解析為 `$HOME/storage/`。

**注意**  
此`storage-root`值必須是 macOS 上的絕對路徑。

## 選項
<a name="managing-session-storage-options"></a>

下列選項可與 `dcv set-storage-root`命令搭配使用

**`--session`**  
要指定儲存目錄的工作階段 ID。  
類型：字串  
必要：是

## 範例
<a name="session-storage-example"></a>

**Windows Amazon DCV 伺服器範例**  
下列範例針對工作階段 ID 為 `my-session` 的工作階段，將儲存路徑設為 `c:\session-storage`。

```
C:\> dcv set-storage-root --session my-session c:\session-storage
```

**Linux Amazon DCV 伺服器範例**  
下列範例針對工作階段 ID 為 `my-session` 的工作階段，將儲存路徑設為目前使用者主目錄中名為 `session-storage` 的目錄。

```
$ dcv set-storage-root --session my-session %home%/session-storage/
```

# 管理 Amazon DCV 工作階段授權
<a name="managing-session-perms"></a>

授權用於授予或拒絕特定 Amazon DCV 功能的 Amazon DCV 用戶端許可。一般而言，授權是在 Amazon DCV 工作階段啟動時設定。不過，您可以編輯執行中工作階段的許可。如需 Amazon DCV 授權的詳細資訊，請參閱 [設定 Amazon DCV 授權](security-authorization.md)。

若要修改執行中工作階段的許可，請使用 `dcv set-permissions`命令。

**Topics**
+ [語法](#managing-session-perms-syntax)
+ [選項](#managing-session-perms-options)
+ [範例](#session-perms-example)

## 語法
<a name="managing-session-perms-syntax"></a>

```
dcv set-permissions --session session-id --none | --reset-builtin | --file /path_to/permissions_file
```

您必須指定 `--none`、 `--reset-builtin`或 `--file`。

## 選項
<a name="managing-session-perms-options"></a>

下列選項可以搭配 `dcv set-permissions` 命令使用。

**--session**  
指定要設定其許可的工作階段 ID。

**--reset-builtin**  
將工作階段的許可重設為預設工作階段許可。預設許可授權只有工作階段擁有者才能完整存取所有功能。

**--none**  
撤銷工作階段的所有許可。

**--file**  
指定自訂許可檔案的路徑。如果指定的檔案是空的，則會撤銷所有許可。如需有關建立自訂許可檔案的詳細資訊，請參閱 [了解許可檔案](security-authorization-file-create.md)。

## 範例
<a name="session-perms-example"></a>

**範例 1 — 撤銷所有許可**  
下列範例針對 ID 為 `my-session` 的工作階段，撤銷所有用戶端許可。

```
C:\> dcv set-permissions --session my-session --none
```

**範例 2 — 指定自訂許可**  
下列範例會指定名為 的自訂許可檔案，`perm-file.txt`用於 ID 為 的工作階段`my-session`。這個檔案位於 `c:\dcv\` 目錄中。

```
C:\> dcv set-permissions --session my-session --file c:\dcv\perm-file.txt
```

**範例 3 - 重設許可**  
下列範例針對 ID 為 `my-session` 的工作階段，將許可重設為預設值。

```
C:\> dcv set-permissions --session my-session --reset-builtin
```

# 管理 Amazon DCV 工作階段顯示配置
<a name="managing-session-display"></a>

您可以設定執行中 Amazon DCV 工作階段的顯示配置。顯示配置會指定用戶端連線至工作階段時所使用的預設組態。不過，用戶端可以使用 Amazon DCV 用戶端設定或原生作業系統顯示設定手動覆寫配置。

如果主機伺服器的硬體和軟體組態不支援指定的解析度或畫面數量，Amazon DCV 伺服器不會套用指定的顯示配置。

Amazon DCV 可以根據設定和伺服器系統組態來設定解析度。
+ Web 用戶端解析度預設為 1920x1080 （來自 web-client-max-head-resolution 伺服器設定）。
+ 原生用戶端預設為 4096x2160 （從 max-head-resolution)。

請注意，可用的解析度和監視器數量取決於伺服器的組態，請務必遵循[先決條件指南](https://docs.aws.amazon.com/dcv/latest/adminguide/setting-up-installing.html)來正確設定系統環境和驅動程式，以獲得最佳效能。

**注意**  
對於原生用戶端，最多可以使用四個監視器。  
對於 Web 用戶端，最多可以使用兩個監視器。  
任何組態都不支援高於解析度或超過監視器數量上限的監視器。

**Topics**
+ [存取顯示配置](#display-restrict)
+ [設定顯示配置](#dislay-set)
+ [檢視顯示配置](#dislay-view)

## 存取顯示配置
<a name="display-restrict"></a>

您可以設定 Amazon DCV 伺服器，以防止用戶端請求超出指定範圍的顯示配置。若要限制顯示配置變更，請設定下列 Amazon DCV 伺服器參數。
+ [`enable-client-resize`](config-param-ref.md#paramref.display.enable-client-resize)—若要防止用戶端變更顯示配置，請將此參數設定為 `false`。
+ [`min-head-resolution`](config-param-ref.md#paramref.display.min-head-resolution) 和 [`max-head-resolution`](config-param-ref.md#paramref.display.max-head-resolution)- 分別指定允許的最小和最大解析度。
+ [`web-client-max-head-resolution`](config-param-ref.md#paramref.display.web-client-max-head-resolution)- 指定 Web 瀏覽器用戶端允許的解析度上限。`max-head-resolution` 限制優先於 `web-client-max-head-resolution` 限制。根據預設，網頁瀏覽器用戶端的解析度上限為 1920x1080。根據 Web 瀏覽器和用戶端電腦的規格，指定較高的解析度可能會導致效能問題。
+ [`max-num-heads`](config-param-ref.md#paramref.display.max-num-heads)- 指定顯示數目上限。
+ `max-layout-area`— 指定允許用於螢幕區域的像素數上限。具有總螢幕區域 （以像素表示） 超過指定值的請求會被忽略。

如需這些參數的詳細資訊，請參閱〈參數參考〉中的 [`display` 參數](config-param-ref.md#display)。

## 設定顯示配置
<a name="dislay-set"></a>

**設定執行中 Amazon DCV 工作階段的顯示配置**  
使用 `dcv set-display-layout`命令並指定工作階段，以設定顯示配置和顯示配置描述項。

```
dcv set-display-layout --session session-id display-layout-descriptor
```

顯示器配置描述項指定顯示器數目，以及每個顯示器的解析度和位置偏移量。必須依下列格式指定描述：

```
widthxheight+|-x-position-offset+|-y-position-offset
```

如果您指定多個螢幕，請以逗號分隔螢幕描述項。螢幕位置偏移量指定螢幕左上角相對於螢幕 1 的位置。如果您未指定畫面的位置位移，則預設為 x=0 和 y=0。

**重要**  
如果您指定多個螢幕，請確定已正確設定每個螢幕的位置偏移量，以避免螢幕重疊。

例如，下列顯示器配置描述項指定兩個螢幕：
+ 螢幕 1：1920x1080 解析度偏移到 x=0, y=0
+ 螢幕 2：800x600 解析度偏移到 x=1920, y=0，因此出現在螢幕 1 的右側。

![\[具有兩個螢幕的螢幕配置。\]](http://docs.aws.amazon.com/zh_tw/dcv/latest/adminguide/images/eg2.png)


```
1920x1080+0+0,800x600+1920+0
```

下列顯示器配置描述項指定三個螢幕。
+ 螢幕 1：1920x1080 解析度偏移到 x=0, y=0
+ 螢幕 2：1920x1080 解析度偏移到 x=1920, y=0，因此出現在螢幕 1 的右側。
+ 螢幕 3：1024x768 解析度偏移到 x=-1024, y=0，因此出現在螢幕 1 的左側。

![\[具有三個螢幕的螢幕配置。\]](http://docs.aws.amazon.com/zh_tw/dcv/latest/adminguide/images/eg1.png)


```
1920x1080+0+0,1920x1080+1920+0,1024x768-1024+0
```

## 檢視顯示配置
<a name="dislay-view"></a>

**檢視工作階段的顯示器配置**  
使用 `dcv describe-session` 命令並檢閱輸出中的 `display layout` 元素。如需詳細資訊，請參閱[檢視 Amazon DCV 工作階段](managing-sessions-lifecycle-view.md)。

# 管理工作階段名稱
<a name="managing-session-name"></a>

您可以隨時變更執行中工作階段的名稱。您可以使用工作階段的特定名稱，根據工作階段的名稱快速識別工作階段。工作階段名稱在執行中的工作階段之間不需要是唯一的。

若要變更執行中工作階段的名稱，請使用 `dcv set-name`命令。

**Topics**
+ [語法](#managing-session-name-syntax)
+ [選項](#managing-session-name-options)
+ [範例](#example)

## 語法
<a name="managing-session-name-syntax"></a>

```
$ dcv set-name --session session_id --none |--name "session-name"
```

您必須擇一指定 `--name` 或 `--none`。

## 選項
<a name="managing-session-name-options"></a>

下列選項可以搭配 `dset-name` 命令使用。

**`--session`**  
要設定其名稱的工作階段 ID。  
類型：字串  
必要：是

**`--name`**  
要指派工作階段的名稱。只有在您想要將名稱指派給工作階段時，才指定此選項。如果您想要移除名稱，請省略此參數。工作階段名稱長度最多可達 256 個字元。它可以包含字母、數字和特殊字元。如果指定的字串超過 256 個字元，命令會失敗。  
類型：字串  
必要：否

**`--none`**  
指定此參數以從工作階段中移除現有名稱。如果您不想移除工作階段名稱，請省略此選項。  
必要：否

## 範例
<a name="example"></a>

**範例 1—變更工作階段的名稱**  
下列範例會將 ID 為 的工作階段名稱`my-session`設定為 `my graphics session`。

```
$ dcv set-name --session my-session --name "my graphics sessions"
```

**範例 2 - 移除工作階段的名稱**  
下列範例會移除 ID 為 的工作階段名稱`my-session`。

```
$ dcv set-name --session my-session --none
```

# 尋找和停止閒置工作階段
<a name="stop-idle-sessions"></a>

您可以使用 CLI 命令搭配 `-j`命令選項來識別閒置的 Amazon DCV `dcv describe-sessions` 工作階段。指定 `-j` 選項可將命令設定為以 JSON 格式傳回輸出，以提供工作階段的其他詳細資料。

例如，下列命令針對名為 `my-session` 的工作階段，傳回相關資訊。

```
$ dcv describe-session my-session -j
```

輸出：

```
{
    "id" : "my-session",
    "owner" : "dcvuser",
    "x11-display" : ":1",
    "x11-authority" : "/run/user/1009/dcv/test3.xauth",
    "num-of-connections" : 1,
    "creation-time" : "2019-05-13T13:21:19.262883Z",
    "last-disconnection-time" : "2019-05-14T12:32:14.357567Z",
    "licensing-mode" : "DEMO",
    "licenses" : [
        {
            "product" : "dcv",
            "status" : "LICENSED",
            "check-timestamp" : "2019-05-14T12:35:40Z",
            "expiration-date" : "2019-05-29T00:00:00Z"
        },
        {
            "product" : "dcv-gl",
            "status" : "LICENSED",
            "check-timestamp" : "2019-05-14T12:35:40Z",
            "expiration-date" : "2019-05-29T00:00:00Z"
        }
    ]
}
```

在命令輸出中，`num-of-connections` 參數指出作用中的用戶端連線數目。值為 `0` 表示沒有作用中的用戶端連線，且工作階段目前閒置。您也可以使用 `last-disconnection-time` 參數，以判斷工作階段上次何時有作用中的用戶端連線。

您可以建立指令碼或 cron 任務，以利用此資訊來識別閒置工作階段。然後，您可以使用 [`dcv close-session`](managing-sessions-lifecycle-stop.md) 命令，以停止使用這些工作階段。

**注意**  
停止工作階段會關閉正在工作階段中執行的所有應用程式。