How to store user data in Terminal Services

After committing to host user sessions in Terminal Services, one of the first challenges you face involves storing user profile data. By default, all user profile data is stored on the session host server. This can be problematic for many reasons. For starters, an organization's session host servers might not be equipped to handle the demands of serving user profiles. Furthermore, if the session host is clustered, then depending on how the cluster is configured, a failover could render all user profiles inaccessible.

    Requires Free Membership to View

The default behavior for user profiles is practical only for small-to medium-sized organizations. Larger enterprises should store user profile data on a file server, preferably within a Distributed File System (DFS) namespace.

Redirecting a user's profile to a file server isn't too difficult. You can instruct Windows about the profile's new location through Group Policy settings. The trick is that in Windows Server 2008 R2, Microsoft rebranded Terminal Services as Remote Desktop Services. In doing so, the company also changed the names and locations of some of the required Group Policy settings. Therefore, if your domain controllers (DCs) are running Windows Server 2008, and the Active Directory schema has not been extended to support Windows Server 2008 R2, then you would use one set of Group Policy settings -- anyone running Windows Server 2008 R2 will have to use different settings. Both sets of settings are described below.

Profile storage
The first step in getting a handle on user profiles is to specify an alternate location for them.

In Windows Server 2008, navigate through the Group Policy Management Editor to Computer Configuration | Policies | Administrative Templates | Windows Components | Terminal Services | Terminal Server, and enable Set Path For TS Roaming User Profiles.

In Windows Server 2008 R2, this setting is located at Computer Configuration | Policies | Administrative Templates | Windows Components | Remote Desktop Services | Remote Desktop Session Host | Profiles. Enable Path For Remote Desktop Service Roaming User Profile.

After this setting is enabled, Windows creates a folder that matches each user's account name. The profile is stored within subfolders beneath the user's home folder. The specified location should be entered in Universal Naming Convention format. It should not include the %username% variable since Windows creates the user folders on its own. Furthermore, everyone must have rights to access the shared folder.

In addition, consider enabling Set Remote Desktop Services User Home Directory. This settings allows you to specify the location to be used by user's home directories.

Folder redirection
Although some folders are a part of the user's profile, profile redirection and folder redirection are two different things. Folder redirection is used to redirect user's data folders to a network location. This is important because folders such as Documents can become quite large. If redirection is not used, then these folders have to be copied every time the user logs on. Redirecting the folders to a network share eliminates the copy process and expedites logon and logoff times.

Group Policy also controls fold redirection. The same policy settings are used in both Windows Server 2008 and Windows Server 2008 R2, and they can be found under User Configuration | Policies | Windows Settings | Folder Redirection.

If you're already performing profile redirection and want to use the same location for redirecting folders, then you have to do so in a way that prevents potential conflicts. The easiest way to do this is to use the Redirect to the Following Location option for each folder. You can then include the %username% variable within the path (\\server\share\%username%) to ensure that the folder is placed within the user's profile.

While redirecting Windows profiles isn't difficult, make sure your chosen destination has sufficient resources and that the specified server can't become a single point of failure if the server malfunctions.

Brien M. Posey, MCSE, has received Microsoft's Most Valuable Professional Award four times for his work with Windows Server, IIS and Exchange Server. He has served as CIO for a nationwide chain of hospitals and health care facilities and was once a network administrator for Fort Knox. You can visit his personal website at www.brienposey.com.

This was first published in April 2010

There are Comments. Add yours.

TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.