Linux Virtual Delivery Agent

Logon with a temp home directory

You can specify a temp home directory for cases where the mount point on the Linux VDA fails. With a temp home directory specified, a prompt shows during a session logon when the mount point fails. User data is then stored under the temp home directory.

The following table describes registry keys that help with your home directory settings.

Registry key Description Command
LogNoHome Controls whether users can log on to sessions without a home directory. The default value is 1 and it means yes. If the value is set to 0, session logons without a home directory are disabled. create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "LogNoHome" -d "0x00000001" --force
HomeMountPoint Sets a local mount point on the Linux VDA. For example, if /mnt/home is the mount point, a user’s home directory is /mnt/home/domain/<user_name>. Make sure that the mount point is the same as the user home directory in your environment. This setting takes effect only when CheckUserHomeMountPoint is set to 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 Controls whether to set user-specific home directories as the mount point on the Linux VDA. If you want to set user-specific home directories as the mount point, set the value to 1. The default value is 0. ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "CheckUserHomeMountPoint" -d "0x00000001" --force
TempHomeDirectoryPath Sets a temp home directory on the Linux VDA in case the mount point fails. The default value is /tmp. The temp home directory setting takes effect only when the mount point determined by HomeMountPoint and CheckUserHomeMountPoint is unavailable. A temp home directory for a user is /tmp/CTXSmf_user_id. create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_SZ" -v "TempHomeDirectoryPath" -d "</tmp by default>" --force
CheckMountPointRetryTime Sets the number of checks, at a frequency of once per second, on whether mounting is successful. The default value is 5. ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "CheckMountPointRetryTime" -d "0x000000010" --force
RemoveHomeOnLogoff Controls whether to remove temp home directories on user logoffs. 1 means yes. 0 means no. create -k "HKLM\System\CurrentControlSet\Control\Citrix" -t "REG_DWORD" -v "RemoveHomeOnLogoff" -d "0x00000000" --force

Example: Handling Home Directory Mount Failure on Linux VDA

Scenario

You have a Linux VDA configured to mount user home directories from an NFS share at /mnt/home. Occasionally, the mount fails due to network issues. You want to ensure users can still log in and have a temporary home directory created automatically.

Step-by-Step Configuration

1. Set the mount point

ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_SZ" -v "HomeMountPoint" -d "/mnt/home" --force

This tells the VDA where to mount the NFS share for user home directories.

2. Use common mount point (not user-specific)

ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "CheckUserHomeMountPoint" -d "0x00000000" --force

This disables user-specific mount points and uses the shared /mnt/home/domain/ path. If user-specific mount point checking is required, set the value to 1.

3. Set a temporary home directory fallback

ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_SZ" -v "TempHomeDirectoryPath" -d "/tmp" --force

If the mount fails, the user gets /tmp/CTXSmf_ as their temporary home.

4. Retry mount check 10 times (once per second)

ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "CheckMountPointRetryTime" -d "0x0000000A" --force

This gives the system 10 seconds to wait for the mount before falling back.

5. Remove temp home directory on logoff

ctxreg create -k "HKLM\System\CurrentControlSet\Control\Citrix" \ -t "REG_DWORD" -v "RemoveHomeOnLogoff" -d "0x00000001" --force

Cleans up /tmp/CTXSmf_ after the session ends.

Behaviour

When a user logs in and /mnt/home is not mounted, the system:

  • Waits up to 10 seconds for the mount
  • A prompt shows during a session logon shows temporary home folder is used
  • Allows login with home directory /tmp/CTXSmf_ created, user data is then stored under the temp home directory
  • Cleans up temp directory after logout
Logon with a temp home directory