一時ホームディレクトリでのログオン
Linux VDA上のマウントポイントが失敗した場合に備えて、一時ホームディレクトリを指定できます。一時ホームディレクトリが指定されている場合、マウントポイントが失敗すると、セッションログオン中にプロンプトが表示されます。その後、ユーザーデータは一時ホームディレクトリに保存されます。
次の表は、ホームディレクトリの設定に役立つレジストリキーについて説明しています。
| レジストリキー | 説明 | コマンド |
|---|---|---|
LogNoHome |
ユーザーがホームディレクトリなしでセッションにログオンできるかどうかを制御します。デフォルト値は1で、「はい」を意味します。値が0に設定されている場合、ホームディレクトリなしでのセッションログオンは無効になります。 | create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "LogNoHome" -d "0x00000001" --force |
HomeMountPoint |
Linux VDA上にローカルマウントポイントを設定します。たとえば、/mnt/home がマウントポイントの場合、ユーザーのホームディレクトリは /mnt/home/domain/<user_name> です。マウントポイントが、お使いの環境のユーザーホームディレクトリと同じであることを確認してください。この設定は、CheckUserHomeMountPoint が0に設定されている場合にのみ有効になります。 |
create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_SZ" -v "HomeMountPoint" -d "<A directory where the NFS share is to be mounted>" --force |
CheckUserHomeMountPoint |
Linux VDA上でユーザー固有のホームディレクトリをマウントポイントとして設定するかどうかを制御します。ユーザー固有のホームディレクトリをマウントポイントとして設定する場合は、値を 1 に設定します。デフォルト値は 0 です。 | ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "CheckUserHomeMountPoint" -d "0x00000001" --force |
TempHomeDirectoryPath |
マウントポイントが失敗した場合に備えて、Linux VDA上に一時ホームディレクトリを設定します。デフォルト値は /tmp です。一時ホームディレクトリの設定は、HomeMountPoint および CheckUserHomeMountPoint によって決定されるマウントポイントが利用できない場合にのみ有効になります。ユーザーの一時ホームディレクトリは /tmp/CTXSmf_user_id です。 |
create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_SZ" -v "TempHomeDirectoryPath" -d "</tmp by default>" --force |
CheckMountPointRetryTime |
マウントが成功したかどうかを、1秒に1回の頻度でチェックする回数を設定します。デフォルト値は5です。 | ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "CheckMountPointRetryTime" -d "0x000000010" --force |
RemoveHomeOnLogoff |
ユーザーログオフ時に一時ホームディレクトリを削除するかどうかを制御します。1は「はい」を意味します。0は「いいえ」を意味します。 | create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "RemoveHomeOnLogoff" -d "0x00000000" --force |
例: Linux VDAでのホームディレクトリマウント失敗の処理
シナリオ
/mnt/home にあるNFS共有からユーザーホームディレクトリをマウントするように構成されたLinux VDAがあります。時折、ネットワークの問題によりマウントが失敗します。ユーザーが引き続きログオンでき、一時ホームディレクトリが自動的に作成されるようにしたいと考えています。
段階的な構成
1. マウントポイントを設定する
ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_SZ" -v "HomeMountPoint" -d "/mnt/home" --force
これは、ユーザーホームディレクトリ用のNFS共有をどこにマウントするかをVDAに指示します。
2. 共通のマウントポイントを使用する(ユーザー固有ではない)
ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "CheckUserHomeMountPoint" -d "0x00000000" --force
これにより、ユーザー固有のマウントポイントが無効になり、共有
/mnt/home/domain/パスが使用されます。ユーザー固有のマウントポイントのチェックが必要な場合は、値を1に設定します。
3. 一時ホームディレクトリのフォールバックを設定する
ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_SZ" -v "TempHomeDirectoryPath" -d "/tmp" --force
マウントが失敗した場合、ユーザーは一時ホームとして /tmp/CTXSmf_ を取得します。
4. マウントチェックを10回再試行する(1秒に1回)
ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "CheckMountPointRetryTime" -d "0x0000000A" --force
これにより、システムはフォールバックする前にマウントを10秒間待機します。
5. ログオフ時に一時ホームディレクトリを削除する
ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "RemoveHomeOnLogoff" -d "0x00000001" --force
セッション終了後、
/tmp/CTXSmf_をクリーンアップします。
動作
ユーザーがログインし、
/mnt/homeがマウントされていない場合、システムは次のようになります。
-
マウントを最大10秒間待機します
-
セッションログオン中にプロンプトが表示され、一時ホームフォルダーが使用されていることを示します
-
ホームディレクトリ
/tmp/CTXSmf_が作成された状態でログインを許可し、ユーザーデータは一時ホームディレクトリに保存されます -
ログアウト後に一時ディレクトリをクリーンアップします