We are in the process of trying to migrate about 500 user profiles from a Windows 2003 Terminal Server (TS) to a Windows 2008r2 Terminal Server. We can easily xcopy the profiles but there must be a way to migrate all the user profiles via PS. When using XCOPY and the user logs into the new TS, the system creates a secondary profile. However, we need them to use the profile that we copied as it contains their favorites and desktops. I was told Roaming profiles are not an option. We have written a VB script to copy the files from the old server to the new server upon 1st login, but I would like to see about doing this via PS if possible. Thanks.
I hate to break it to you but a simple copy script will not suffice. Server 2003 (XP) profiles are version 1 profiles. Server 2008 and newer use version 2 profiles (Vista/7). The folder structure and layout has been entirely changed and they are not natively compatible so the new RDS servers will not recognise and use the original TS profiles (welcome to one of the the nightmares of Windows XP to Windows 7 migrations). There are a number of 3rd party tools that can help with this migration, but some of it may be as simple as using folder redirection to extract items such as the desktop, favorites, my documents, etc. from the 2003 profile to a network share, and then utilizing the same folder redirection once migrated to the version 2 profile. This would not get “everything” as not every component can be redirected and this does nothing for NTUser.dat settings. It will get you close enough to allow manageable cleanup. (Note that roaming profiles and even mandatory profiles suffer from the same issue.) One additional item of consideration. Assuming you are not using folder redirection and as stated you cannot use roaming profiles, if your users are logging into more than a single TS/RDS servers, how are you providing uniform user experience across multiple servers. These settings would not be the same on each login without one of these technologies.
Source: Consultant for Applications2U.com that does this type of thing daily.
As Dave says, a new profile will be made for all of these users, that much is unavoidable.
However, if you used a User Policy to run a PowerShell script at login, you could pull the user’s data from their previous profile into their new profile, and completely skirt the issue that route.