Move The Users Directory In Windows 7

Ed. note: If you've tried moving the Windows Users directory to a location other than the default, you know it can be quite an undertaking. Reader Roobs wrote in detailing how he moved his Windows 7 Users directory without nasty registry hacks.

When scouring the net for hours on a method of relocating the entire Users directory (in Windows 7) on another partition, most of the methods were not good. They mostly involved nasty registry editing and dummy accounts and had quirks that could cause potential issues further down the line.

Eventually, I came across a brilliant method on tuts4tech by a user named "ohdannyboy". It's utterly flawless, and makes use of symlinks. It's simple, and you can just forget about it after it's done. Everything takes care of itself. The only quirk is that accessing the Users folder from the C: drive (for example) appears as "C:" when it's actually on "D:". But this appears to be the intentional behaviour of symlinks. Several months on for me, and it's like nothing was ever changed.

Unfortunately, that post no longer seems to be there (the site crashed shortly after, and I think they had to resort to backups or something). It's too good a method to let it disappear. Just remember that this is THIS user's method and NOT mine.

It's also best to do this on a clean install of Windows, unless you don't mind waiting awhile...

I've read all I could find about this, and the information below is correct and tested: To most easily move all user files and user program files off your boot drive (an SSD in my case), follow these instructions.

FIRST, Create a restore point (they're better in Windows 7 than you might remember):

1. Open System by clicking the Start button, right-clicking Computer, and then clicking Properties.

2. In the left pane, click System protection. If you're prompted for an administrator password or confirmation, type the password or provide confirmation.

3. Click the System Protection tab, and then click Create.

4. In the System Protection dialog box, type a description, and then click Create.

THEN: Go to System Recovery/Command Prompt:

1. Boot with the Win7 Install DVD, choose language, currency and keyboard, and hit Next.

2. At the screen with the "Install Now" choose "Repair your computer"

3. You will be asked if you want to "Repair and Restart" by the System Recovery options, choose "No".

4. Then Make sure that Windows 7 is listed as one of the installed OS's available for recovery, and that it's selected and then press next. You will be given a list of recovery tools.

5. Choose "Command Prompt".

Find your virtual Windows drive loaded from the Win7 media (probably either C or X), find your actual Windows/SSD drive (D or E) and find your HDD (regular hard drive) (D or E).

In my system normally, C=SSD with Windows on it, D=HDD data drive

Using Win7 Update media, the drives in Recovery mode were set up differently, thusly:

X: virtual/temp Windows drive,

E: actual Windows/SSD drive,

D: HDD, hard drive I wanted to put Users on.

Some report that System Recovery mode will set up their drives like this:

C: virtual/temp Windows drive

D: Actual Windows/SSD drive

E: HDD, they want to put /Users on.

In the command prompt you will be using Robocopy (NOT xcopy!) to copy c:Users to d:Users, then delete the old c:Users, then make a symlink from c:Users to D:Users. Note that you must do these things in order, and you must not have a d:Users dir before you do this.

NOTE: in the System Recovery command prompt window, your drives are not the same as they will be after you leave recovery mode! So adjust the commands below for how the drives are in Recovery Mode, and then they'll turn out correct later.

I used:

robocopy /mir /xj E:Users D:Users

To move /Users from Windows/SSD to HDD.

/mir tells robocopy to mirror the directories, this will copy all files and permissions.

/xj is very important, this tells robocopy not to follow junction points. If you forget this, you will have a lot of trouble.

Make sure no files failed to copy (FAILED column = 0).

Then you must remove the old Users Folder from the Windows/SSD (c:) drive, before you can create the symlink:

I used:

rmdir /S /Q E:Users

Create a NTFS Junction/symlink that points to the new Users folder:

I used:

mklink /J E:Users D:Users

Use the /J switch to create a junction that's a hard symlink. (If you use the /D switch, you'll also have to edit the registry, cuz it won't be a hard link.) Using /J, when Windows looks for the C:Users dir, it will find it! But it will be on the HDD instead of the SSD. Tricky!

To see the proof of what you've created, still in the command prompt window, go into the actual Windows/SSD and do the "dir" command, and you'll see:

" Users [D:Users] "

Now restart and you'll see /Users on your HDD, and there you go. No further configuration or fiddling required. New user profiles will all be stored on the D: drive, as will any user specific data. And it is achievable without any messing about in the registry, searching and replacing values, or having to mess with new profiles in any way. Totally set and forget.

If you give the method above a try, make sure you set your System Restore poing just in case something goes wrong. If you've tried this or other methods, let's hear about it in the comments. Thanks Roobs!


Comments

    Thanks so much for this tip!

    I recently went through the same process of researching for hours upon hours. In the end, I gave up and just changed the location of the user folders like Download and My Documents because moving the actual \Users folder was too much of a nightmare!

    I am going to try this when I get home. Thanks again!

    ...now if only Western Digital could make a decent hard drive these days...then there really would be NOTHING holding me back from moving \Users from my SDD to HDD >_^

    Just a note that there is no instructions on when you are reinstalling after doing this. Isn't this one of the reasons for doing it so you don;'t need to backup before you format.

    Please clarify on this, I believe that all we need to do is skip the copy part, so long as usernames and passwords are still the same and that you have already created the same users after a clean install.

    seems to work if my secondary drive is d:. otherwise, eg it's f:, when i log in windows reports it can't find my user profile.

    i really wish windows would get symlinks right. the other failing is that if you delete the link, it deletes all the files in the linked directory. that's a huge fail. please, oh, please tell me there's another way.

    I'm betting Win 7 is too smart not to know we've modifyied the link target name before deleting the link.

    In any case, my issue is not being able to copy (and subsequently delete using the 'rmdir' command in safe-mode) a couple of my User files (.dat and .log files) as Windows says they are in use. I didn't use 'robocopy', so I'll give that a bash.

    They sounded like the kind of files Windows regenerates if you delete them, but I'm not sure I'll get to find out...

    These instructions seem to be slightly differnt to the US site, that uses the /copyall switch for tthe robocopy command.

    Also, some people appear to have had problems with logging in after this, due to their profile not loading. I experienced this (luckily on a brand new build) and fixed it by making sure I recreated the hidden symlinks and junctions in the D:\users directory before restarting. I mucked about with it a bit and reckon it's the default user profile that's critical.

    You can just right click and change the location of each folder you want stored in another drive, Windows will then ask you if you wish to move all the files to the new location.. Way to simple than this method..

    You might want to clear the contents of your /Temp directory as well before following this route or you will likely experience file permission errors.

    Anyone successful doing this on Windows 7 64bit edition? I was not able to login to the profiles after creating the symlink

    Yes I got it to work using 64-bit Windows 7 Professional.

    Anyone who says that they couldn't login afterwards has made a mistake. I did so too on my first attempt. My mistake was in the creation of the hard-link. If you think about it, that must be the mistake that you guys are making too. Windows is unable to find your profile because the link is pointing to the wrong place.

    So in the article where it says, "Create a NTFS Junction/symlink that points to the new Users folder", it means to the Users folder when *Windows* is booted, *not* within the recovery environment. The article should emphasise this point.

    There's a pretty good guide here on Whirlpool which also shows you how to move Program Files too. I actually could not get the above working without doing the regedit as described below.

    http://whirlpool.net.au/wiki/moving_user_files

    If you are just moving folders this was a good guide but does not work unless you follow Jay Lemmons comments at the bottom of this thread to get it working on 64bit:

    http://www.intowindows.com/change-default-installation-directory-in-windows-7-vista/

    The instructions in the post do not seem to be correct for Windows 7 Ultimate (64-bit).

    At Step #3 (after choosing "Repair your computer") the System Recovery Options dialog does not ask if I want to “Repair and Restart”.

    And when I choose my Operating System and click "Next", instead of being offered a list of tools I get an error message that says:

    "This version of System Recovery Options is not compatible with the version of Windows you are trying to repair..."

    Have you got another way of getting into the System Recovery Command Prompt?

    After researching several methods, that all seemed very complex, I saw this post and found it easy to follow and it seems to have done it exactly as described. I'm using Win7 home premium 64. Thanks Lifehacker!

    Wohoo! Worked great for me!
    Previously to this i tried editing the registires as some other blogs where indicating but the experiment ended up with a installation of my Windows 7 + all service packs .

    your guide was easy to understand and follow for a mid-level-geek that i am.

    thank you so much!

    Seems like a great method. Here's my error...After performing all of the above steps and verifying the Users dir have been moved to the HDD....I get the following error on the Windows 7 startup page:

    The User Profile Service service failed the logon.

    User profile cannot be loaded.

    ...click ok and logs off...back into a circle.

    Any suggestions?

Join the discussion!

Trending Stories Right Now