Relocating the Users folder in Windows 7

Relocating your Home folder in Apple’s OS/X is pretty straightforward. However, the ability to relocate the Users folder on Windows has never been a simple task. When I decided to install the Windows 7 RC I was determined to find a way to move the location of the Users folder from the Windows 7 system partition on my hard drive. There are several reasons for wanting to do this:

  1. You want to be able to restore the system from backup without having to affect the data contained in your Libraries.
  2. You have a large hard drive and have partitioned it leaving a partition for user data.
  3. You have a secondary hard drive and want to store your user data on it.

You can’t simply open Windows Explorer and move the folder from the default location on the C:\ drive. The registry in Windows has numerous pointers to the location of you Users and the legacy Documents and Settings folders (yes it still exists in Windows 7 to support applications that are not Vista/Windows 7 compliant). Simply moving the folder will create countless headaches.

When I undertook this min-project, I did it with a fresh install of Windows 7. This way I didn’t have any personal data to risk losing or numerous applications to install when things go awry. If you have been using Windows 7 for a while now it is best that you have a recent backup of your system before proceeding.  DriveImage XML is my current tool of choice when it comes to creating a system backup.

A search on Google yielded a blog post by Jean-Phillpe Steinmetz that explained step by step how to do this in Vista. Jean-Phillpe learned that by simply using xcopy that not all the files and settings were maintained properly and that using a backup tool like TruImage.  However, I needed to overcome the fact that I didn’t have a suitable backup solution for Windows 7. Then I remembered that Microsoft had released a tool that just might do the trick. SyncToy 2.0 is intended to help users move data between two folders and keep the files synchronized. By using SyncToy I could relocate the entire Users folder from my system partition to a shared NTFS partition, then reboot to the command line delete and recreate the Users folder, and create the necessary NTFS junctions.

However, when I rebooted an attempted to login the after creating the NTFS junction it would not be able to load my profile. Instead Windows 7 loaded a temporary profile and desktop. Since I had done this with a fresh install of Windows 7 RC so I didn’t have any data to worry about losing. So the next steps were easy.

  1. Open the Control Panel and selected Add or remove user accounts.
  2. Created a new adminstrator level account named root and set a strong password.
  3. Deleted the user I had created during the Windows 7 RC installation.
  4. Created a new standard user account for every day usage.
  5. Logged out of the temp user profile and logged in using my standard user account.

The nice thing about having a standard user account is that many (all?) actions that require admin access will prompt you to enter the password for the administrator account. This behavior is similar to that found in OS/X and Ubuntu.

The one thing that I would like to know is why I couldn’t access my profile after moving it with SyncToy. Not a huge issue for me in this instance, but it could be a problem for someone who has a large amount of data in their User folder. Let me know if you have tried something similar in the comments.

2 responses

  1. I have done the same and made the same mistake. The problem here lies in the fact that not all data is copied: you need to reboot to safe mode to move all the files (while making sure you have ‘view hidden files’ and ‘view system files’ on), because the junction only works on empty folders.
    Then it should work, gl!

Comments are closed.