Change User Profile Folder Location in Vista

Here lies my experience moving my entire User Profile folder structure, including Default, Public, and any local users.

In my search for a solution, the only two easy ways I found to move the user profile directory locations from the system drive is to

  1. Set the User Profile folder during setup using an unattended install file.
  2. Move the individual folders inside your user profile, which can be done using explorer (which will update the registry keys HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders and HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders).

However, this was not good enough for me, I wanted my actual user profile folder to be moved to a seperate partition/volume, including registry settings.  I discovered that it is not actually that hard, provided you’re comfortable with mass replacing registry keys and values.

Here is how I moved my user profile location.  Please note that I wanted all of the profiles moved, included Public and Default, so some of these steps can be skipped if you do not want that:

  1. Make sure you have a complete backup of your system!
  2. Copy the original Default Profile directory to the new location (e.g. from C:\Users\Default to D:\Users\Default).
  3. Copy the original Public Profile directory to the new location (e.g. from C:\Users\Public to D:\Users\Public).
  4. Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList.
  5. Change the value of the Default key to the new user profile location (e.g. D:\Users\Default).
  6. Change the value of the Public key to the new user profile location (e.g. D:\Users\Public).
  7. Change the value of the ProfilesDirectory to the new user profile location (e.g. D:\Users).
  8. At this point, you need to restart and log back in as a different user that has never logged in before and therefore does not have a profile created.  In my case, the Administrator user had never logged in before so I enabled it so that Administrator could log in and used that.  You can enable Administrator login by loading Computer Management and then go to User Accounts, edit the properties for Administrator, and then uncheck Disable Login.
  9. After logging in for the first time with the new user account, you will see “Creating Desktop” and other things like that while Windows is creating your profile.  Note that the new profile should be created in the new location.
  10. After logging in, try to close as many applications as possible.  This will prevent most files from being locked so that you cannot copy them.
  11. Copy the entire original user profiles folder from the original location to the new location (e.g. C:\Users\* to D:\Users\).  (See next step after copy starts).
  12. There are a few things to note during this copy.  There were thousands of .TMP files that were locked and would not copy.  I just skipped these files.  I held down Alt-S so that I could see all of the skipped files and make sure that there were only .TMP files being skipped.  Yes, this took a little while, but at least I was confident that I got all of my files copied.  This process could probably be made easier using the command prompt or powershell.
  13. If, in your case, there are some files that will not copy, you can run procexp.exe, which is file provided by sysinternals.  Then do a Find Handle and search for part of the filename.  procexp will tell you which programs are locking the file.  As long as you closed as many programs as you could, though, this should not happen.
  14. Find and download a program that will do a Search & Replace on the registry.  I will not suggest one because I did not find one single program that worked perfectly.  I ended up downloading a few different freeware applications and using all of them.
  15. Using the Registry Search & Replace program, do a search for the original user profile folder and replace it with the new user profile folder (e.g. search for “C:\Users” and replace with “D:\Users”.  Note that some of the applications I used would only change values and not key names.  However, the keys that needed to be chagned were all related to MuiCache.  I do not know if these actually need to be updated.  I did just to make sure.
  16. Log out.  Log back in with the same user.  Repeat step 14 until there is nothing left to replace.  The reason for this step is that on logout, some programs seem to update the registry using the old user profile path.
  17. Run regedit.exe and do a search for the original user profile path and make sure it does not exist.  The reason for this step is because (as noted in step 13), I did not trust any of the Registry Search & Replace programs I used.  I ended up needing to update about a dozen of the keys and values manually, since the search & replace missed them.
  18. So that you can easily find programs that do not use the registry and hard-coded profile paths, rename your original profile folder (e.g. rename C:\Users to C:\~Users).
  19. Log out. Log back in as your usual user.  Everything should be working correctly except for programs that use a “hardcoded” user profile location.
  20. There are two easy methods that can be used to find programs that use a “hardcoded” profile location and are still looking for the original user profile path.  You can use the procexp.exe trick mentioned above and search for handles in the original profile location.  You can also monitor the oringal profile location to see if any new folders or files were created.  For example, in my case, FolderShare created some folders and files in the directory C:\Users\MyUsername\AppData\Local\FolderShare\.  So, I updated the FolderShare settings to point to the different path and then deleted the C:\Users directory (note that C:\~Users still existed as a backup).
  21. Since you are now confident that all of your data has been moved (right??????), you can deleted the backup of the original user profile location (e.g. C:\~Users).

 

This procedure worked flawlessly for me.  Everything user-related is now on a completely different volume, and I can sleep a little better at night!  :-)

88 Comments so far

  1. Zaine Ridling on April 13, 2007

    Incredible. Thanks for documenting this and sharing. I’m grateful, and yes, it does work!

  2. Manoj on April 13, 2007

    Hey…. this is gr8.. plz tell me how will i know which user profile (DOmain, public, private) is currently active on my machine? which registry key or API gives me this information?

  3. Manoj on April 13, 2007

    Hey…. this is gr8.. plz tell me how will i know which user profile (DOmain, public, private) is currently active on my machine? which registry key or API gives me this information? my mail address is manojchanchawat@yahoo.com

    thanks in advance

  4. Liam on April 13, 2007

    I did this but now I can’t create any new users on the machine. I think it might be something to do with permissions on the new drive….. anyone else seen this?

  5. joshmouch on April 13, 2007

    Please explain “can’t create any new users”.

    At one point while I was experimenting, when I logged on with a new user the profile could not be created, so Windows used a default profile. The reason for this was the registry entries for the default profile and file location of the actual default profile were not pointing to the same place.

  6. Liam on April 14, 2007

    I can create the user, then when I try to login - as the new user for the first time, it say logging in, and immediately logs out again. The new users folder is left in a kind of half state.
    In the event log I see errors from the User Profile service.
    Windows cannot load classes registry file.
    DETAIL - The system cannot find the file specified.
    I’ve tried doing traces with procmon to figure out what might be failing or what I missed, but there is nothing obvious.

  7. Liam on April 19, 2007

    I figured out what had happened - step 10 - copying c:\users to (in my case) u:\users didn’t copy any of the hidden folders. This seemed to leave the default user in a bad state that any new users tyring to create a profile would fail to be created properly. If these new users were administrators it was fine not sure why, but standard users just wouldn’t work.
    Anyway I copied c:\users\default from another vista machine - hidden folders and all, and then it worked no problem…. happy again, and it’s pretty sweet having all the user data out on a different drive ,makes backups much more manageable.

  8. derekk19 on April 25, 2007

    Thanks for these instructions, they were great and easy to follow. I have now moved my users folder to U:\Users. I found a registry search & replace program that looks quite good. Registry ToolKit http://www.majorgeeks.com/Registry_Toolkit_d527.html. I had to run this as administrator, otherwise it silently does not change the values…
    Usual disclaimers: It worked for me, may not for you, blah blah blah.

    One program I am having trouble with is Norton Antivirus. It has C:/Users in two registry values (HKLM/Software/Symantec/Norton AntiVirus) and I’m trying to find a way to change them. Norton has put tricky security round these values, even administrator can’t change them.

  9. Dennis on April 26, 2007

    Hi, I have the same problem that Liam had… Unfortunately I deleted my old Default user profile, so I cannot restore the default user profile. Can someone send me a link to get all the hidden files? Thanks
    Dennis (sungtakdh@hotmail.com)

  10. Dennis on April 28, 2007

    I finally had to reinstall Vista, and finally things worked again… It’s a bit of a pain, just wish that Microsoft would make the relocation of the entire set of user profiles much easier. To copy the files in Step 11, I strongly suggest that you make all hidden files visible in case you forget hidden files.

    I wonder how I can copy those hidden system files that look like shortcuts (but aren’t)…

  11. Charles on April 29, 2007

    if i want to change the location of only my user profile, do i simply follow the steps above except those that deal with the public folder?

    also, can i change my user folder from, say, c:\users\charles to d:\charles (no “user” directory in the new location)?

  12. Jerome Cruz on April 29, 2007

    Hi Joshua,
    Can you send the step by step on how you successfully did the option 1

    Set the User Profile folder during setup using an unattended install file.

  13. Bill on April 30, 2007

    I also want to move all user profile to another drive. I am a novice at this sort of thing and not sure I should attempt to do what you have instructed. For example I was reading through your Instructions and thought I would look at step 4 When I got to ProfileList I could not find the Default key, Public Key, or the ProfilesDirectory. Step 13 also is a bit of a mystery also. Maybe number 1 on your list would be a better alternative for me. an you provide more detailed info.
    Thanks Bill

  14. Sven on May 3, 2007

    I linked in my separate partition under C:\Users. The main advantage is, that no search & replace on the registry is needed. In order to do this, the above steps 1-8 must be followed, using a temporary folder for steps 5-7.

    After Step 8, the original Users folder may be renamed (it also has an object name, but Vista changed that for me somehow…), a new, empty Users folder created, and the new partition mounted there (using the Storage Manager).

    Note that you don’t need to change all these registry settings. After you are done copying the files, you go back to the registry (see steps 4-7) and restore the original settings.

    I had trouble copying “All Users” and “Default User” as these are links. You can recreate them from the command prompt using:
    mklink /d “All Users” C:\ProgramData
    mklink /j “Default User” C:\Users\Default

    And I had to change a bunch of permissions, owners, etc. in the new location to resemble the original Users folder (especially in the Public folder).

  15. oliver on May 5, 2007

    i just tried it on an ultimate installation
    -installed everything under a username (temp admin)
    -then changed the profilelist directory
    -created users (another admin)
    -restarted and logged as the new admin user and there they are all in a diff dir
    -deleted the orig user
    everything looks good
    thanks

  16. DosR on May 7, 2007

    Do somebody know if it is possible to open a command line session, move all the user directory to D:\ and the create a hardlink in c pointing it?

    Will this work?

  17. MikeB on May 11, 2007

    I moved my complete c:\users to d:\users. Some of things I did were (as best as I remember it):
    -copied the directory using xcopy in the recovery console (boot off vista dvd). If I remember correctly I used “xcopy /E /C /H /K /O /X /B c:\users\*.* d:\users\”. I did have some problems with this since some files had very difficult permissions.
    -find/replace the registry for c:\users with d:\users
    -modified all junctions in d:\users and in c:\programdata (a trick to find them all is do a [dir /a /s > output.txt] from the root directory running as an admin and then search this file for “junctions”.
    -used a tool call junctions that I googled to create junctions.
    -Did an [icacls *.* /L /save permission.txt] before removing junctions in a directory “DirectoryNameHere”. After creating the junctions did a [icacls "DirectoryNameHere" /L /substitue permissions.txt]
    -once the c:\users directory is removed, created a junction that points from c:\users to d:\users (had to do this because some windows updates were not working without it)

  18. rindi on May 15, 2007

    Shouldn’t I be able to at least move the “C:\Users” folder to drive D: by using an autounattend.xml file (created with WAIK) like listed below? The problem is I tried that and everything else in the answer file seems to work like I’m expecting it to, except the Drive D stays empty and the C:\Users folder stays on C:…

    D:\Users\
    %SystemDrive%\ProgramData

  19. rindi on May 15, 2007

    Seems that the contents of my answer file haven’t shown up fully:


    D:\Benutzer\Profiles
    %SystemDrive%\ProgramData

  20. rindi on May 15, 2007

    Doesn’t look like I can copy paste the contents of my answer file to show like they should…

  21. xabbu on May 22, 2007

    I have a solution for step 10 11 and 12. I made a backup with acronis true image before moving the folder and I had the Problem with coping the tmp files too. I had the idea to mount the backup image with acronis and copied that, worked great. Acronis can copy the windows drive and the user folder with no problems.

  22. jackyNIX on May 26, 2007

    Joshua, you’re the man! I’ve put my users folder on a raid 0, works like a charm.
    Best time to do this is right after a clean install, so not much has to be altered in the registry.
    Why does M$ refuse to add a value like %users% …
    it would make life easier to a lot of us.
    Thumbs up for this one.

  23. jackyNIX on May 26, 2007

    -edit-
    raid 1 actually ;p

  24. Ben on May 27, 2007

    Ok, it works, ok .. not completly but most :) But two things crashes, the InternetExplorer and Windows Defender didnt work anymore. Verry strange. Have somebody suggestions?

  25. [...] Source:  Joshua Mouch Blog [...]

  26. Xavier on June 1, 2007

    I do think there is a kinda simplier solution for already created users.

    Let’s say I want to move the foo user’s folder somewhere else on my computer. Just have to log in as admin, make a copy of the foo directory where i wanna put it ie “D:\Users\foo”.
    Then in cmd prompt I have to create a junction :
    mklink /j c:\users\foo d:\users\foo

    Et voilà! User’s folder moved with not too much pain in the ass (and in a far shorter time ;) )
    I know this is not perfect, but it’s kinda easier.

  27. Bill Compton on June 4, 2007

    Hi Jim. Photos i received. Thanks

  28. johns on June 4, 2007

    Is anyone getting a blank screen under user account.
    When I go into user accounts or even try to add a user, the *user accounts* where it shows a icon for a different user is blank.

  29. Mantzy on June 8, 2007

    I had a problem after changing everything (I think, as with other people, it was to do with tmp files not transfering across). I’d noticed that the Administrator’s details were now in D:\Users\Admin earlier on (around about Step 10) but I carried on with the above instructions anyway. I got back up to logging in with my old login (lets call it “fish” for the time being) and it said it was running in a TEMP directory, and when I looked in Explorer this was the case (Admin, Fish, Public and TEMP all being shown). I thought that maybe if I made a new user it would then create this in the D drive but I wanted to keep Fish as my name. If you try to delete the user Fish it says that it’ll not allow you to create another with the same name (not sure if it’s the same in the control panel version of User Settings, I did it though Computer Management way). So I logged out. Logged in as Admin again. Changed the name of the Fish user to Fishhead. Logged out of Admin to see if the settings took (Fishhead was a login option). Logged back in Admin. Knowing that if I logged in as Fishhead I’d go back to the TEMP dir, I changed the name of the folder under D:\Users from Fish to Fish142, and then created a new user called Fish. Deleted user called Fishhead. Logged out of Admin. Logged into Fish. Went to Explorer. Copied the files in Fish142 to Fish and then deleted the folder Fish142.

    So now I’m back to just being a Fish. Don’t know if thats similar to what others had to do but it seems to work.

    Microsoft don’t half make it hard do they?

  30. wsxasd on June 21, 2007

    You can store the Documents folder on another drive or in another folder. For example, if you have more free space on another drive, you can move it.

    To accomplish this task, right click Documents from the Start Menu and select Properties. This opens the Properties dialog box for the Documents folder. Click the Location tab and type in the path to the location where you want to store the folder. Click OK. If the folder location you specified in the Target field does not exist, the Create Message dialog box will appear. Click Yes to create the folder and click OK. Alternatively, you can also select the Move button from the Location tab and browse to the location where you want to store the Documents folder.

  31. pivale on June 28, 2007

    If I move c:\Users to d:\Users and create a symlink using “mklink /j Users d:\Users”, wont’t it be enough?

    I mean every requests for c:\users will be redirected to d:\users, or am I messing up on something?

    Thanks!

  32. Don Hastings on July 8, 2007

    TY Joshua, this is the ONLY on-point article I could find on the web.

    Similar to several of the readers, I am uncomfortable attempting this myself. I need a slightly higher level of specificity.

    Would it be possible for someone to come forward with some kind of “Wizard” that could accomplish this? I’d pay money for it!

    Does anyone know whether Microsoft might provide support in this regard, such as in a future build or service pack?

  33. David Hale on July 9, 2007

    I followed this procedure, I believe exactly, but may have made a mistake because after repeating step 15 the second time, no user could log in properly. When any user tried to login, Windows said that there was a problem with the user’s profile, a temporary profile was being used, and changes to it would not be saved.

    After hours of work I couldn’t fix it. Even System Restore wouldn’t work (it hung — for up to 8 hrs — when resetting the registry).

    I finally had to reformat and reinstall. Beware.

    I’ve since decided that it’s acceptable for AppData to remain on C:, since it’s small stuff, and use the windows relocate feature to move Documents, Pictures, etc.

    Strange that they’d make this so rigid. Also strange that they don’t let you relocate Public, even though there is a “relocate” button.

    It’s enough to make a person go mac.

  34. Rich Brown on July 11, 2007

    Thanks for documenting this. I find it rediculious that Microsoft would make it that difficult for anyone to move the users directory. I think in today’s world of multiple drives, people tend to keep their data separate from their OS so Microsoft really should have incorporated an easy way to choose the ‘Users’ or ‘Data’ volume upon installation or provide a way of moving it. Thanks again for documenting.

  35. C Zaumeyer on July 11, 2007

    Thanks! This helped me “recover” my moved videos folder which was causing Moviemaker2 to fail in Vista! WONDERFUL reg hack!

  36. AlexJ on July 15, 2007

    Hi,
    I think it can be done a bit easier:
    Get the tool LINKD.exe from Windows Server 2003 Ressourcekit tools. Copy it to c:\
    Start Vista from CD into repair mode Konsole window or you can use BartPE or a second Windows XP/Vista installation.
    Now rename c:\users into c:\users.old
    type LINKD c:\users D:\Users
    Now copy all files from c:\users.old into c:\users

    Restart.
    Now all Programs also all with hardcoded Filelocation should work, as this method is absolutly transparent too all applications!

    Tested under Windows XP, but should work the same way under Vista.
    AlexJ

  37. JoeB on July 18, 2007

    AlexJ, unfortunately while your suggestion of a easier way may work under XP it won’t under Vista without losing all the symlinks/junctions hidden in the user profiles. This might not be a problem if everything you install is 100% Vista compliant, but some older software might have a problem.

    I did a combination of what Sven and MikeB posted above, copied all and everything to the new partition, including symlinks (using a batch file I created from the directory output). Changed the main registry profile path for each user*, i.e. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{user’s SID number}\ProfileImagePath - NOT the system/local/network ones - then simply rebooted, renamed the C:\Users folder then mounted the partition under an empty folder of the same name. I found this the easiest (and best) way to do this to ensure everything points to the correct place. Afterwards if all is ok you can delete the old user folder.

    * This is an important change you have to make as just creating a symlink/junction from C:\Users will mean losing the Desktop Search functionality in Documents/Pictures/Music etc unless you navigate directly to their new location. This is because Windows Desktop Search will ignore mounted volumes or junctions. Setting the true path will allow it to use indexes created for those folders/drives.

  38. Jeremy on July 23, 2007

    ok let’s start from the beginning…i think everybody is getting a little out of hand here with editing the registry and whatnot. yes it might work for a little while but it won’t work in the long run…trust me

    in windows XP by default we are given

    C:\Documents and Settings\”User Name”.”Full Computer Name”\My Documents

    this My Documents folder has a special property of being able to “move” or relocate to another place. however, in windows vista they removed the folder My Documents.

    now in windows vista we have:

    C:\Users\”User Name”\Documents

    we all agree that we love the idea of being able to relocate my documents to another location. i personally use it for 3 main reasons:

    REASON#1: SAVING FILES…my documents ALWAYS shows up when performing a file save operation. making it very easy to save files off of the system partition!

    REASON#2: OPENING FILES…my documents ALWAYS shows up when performing a file open operation. which makes it very easy to access saved data. even when running old software in vista the “User name” folder will be right there in the file open window…excellent

    REASON#3: BACKING UP MY FILES…i can backup and restore my documents very easily because it’s all in one folder! plus one can easily wipe out the system partition then after reinstalling just right click on my documents, move the target back to the desired location and within 1 minute all of your data is back in it’s right place…sweet

    so, the main problem in vista is that the “Users” folder and the “User Name” folder cannot be moved or relocated :(

    however, all of the “pre-customized” folders inside of the “User Name” folder CAN be relocated in vista

    so i tried to individually relocate the “Documents” folder for example to another location like D:\

    in other words i created a folder called D:\Documents

    then i moved the target location of C:\Users\User Name\Documents

    to D:\Documents

    now the Documents folder is easy to access!!

    however, there are two problems with that solution:

    PROBLEM#1: when i go to file open now there are 2 folders called “Documents” which is udderly ridiculous.

    PROBLEM#2: let’s say i wanted to create another folder called D:\Resumes and let’s say i wanted that folder to show up when i click on the User Name folder. well i can create a new folder with no problem but it’s not going to show up when i click on the User Name folder. in XP however if i have My Documents targeted on D:\ then any folder i create on D:\ will show up in My Documents…great during open/save operations!

    OK so we are all on the same page i think…none of us want OUR data being stored on the system partition. and in addition to that WE want to decide which folders are easily accessible on our systems. after all we spent all of our time installing pirated copies of vista…right?

    right.

    joshua, i see how your solution could work but i really dont agree with individually editing registry keys to solve this problem. i think the mklink thing is a nifty idea…but it does not solve problem number 2 on my list above.

    if we could somehow figure out how microsoft creates folders with the move target property then we could probably figure out how to force the “User Name” folder to have that property as well.

    is anyone familiar with how to create folders which have that property?

  39. Don Hastings on July 27, 2007

    Greetings.

    I had put related inquiries on the Microsoft TechNet site. I finally got a response.

    I am attempting to digest this reponse as it is a very long one and a techincal response. I can not yet state whether it is “on point”. Therefore, on the TechNet site, I would appreciate review and comment from the techie readers of this thread.

    For those interested, please see: http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1832114&SiteID=17

  40. Marcos Pinto on July 28, 2007

    Hi,

    If you’re doing a clean install, I think it can be simplified a lot (avoiding the whole search/replace registry thing). So that’s what I did:

    Steps 1 up to 7 stay the same.

    8. Log on to the admin user (or create a different user, I had to do it anyway). This user will already have its profile on the new drive (thanks to the previous steps).
    9. Delete the user that was created during the install (which still has its profile in C:\Users).
    10. Create it again and log on - now the new profile will be created in the correct location.

    So far it’s been working fine - I was not able to rename C:\Users, but I’ll do it from Linux when I reboot (so I’m sure no files are open).

    I think this is a much simpler procedure, if you don’t mind a clean install (I actually do, but my XP installation was so broken that I thought it would be better to start from scratch anyway).

  41. dervish on August 1, 2007

    If you are using Vista Home Basic and have problems recreating the “All Users” and “Default User” links, as mentioned by Sven, because it says you don’t have sufficient privileges…then don’t worry when you realise that there is no secpol.msc (User Account Manager plugin) to enable the Administrator.
    To get a CMD prompt with Administrative privileges, all you need to do is:
    1, Click the Start Button
    2, Type ‘CMD’ in the Start Search box
    3, Press and hold down [Ctrl]+[Shift]+[Enter]
    You should then be able to create the links you need

  42. Haresh on August 6, 2007

    I keep getting a error msg “Profile dosent exist” whenever i switch on my HP Pavilion dv2000 Notebook with Windows Vista Home Premium. I Tried corresponding with the HP help desk and they advised me to restore the system. I did the restoration but did not help as the same error msg still keeps appearing. Although the computer is working perfectly fine, but one feels something is wrong when he sees the error msg whenever the computer is switched on!!! Can someone help me solve this irritating problem. Sometimes i regret purchasing this damn Vista, so called Wow, i thing the XP was less troublesome. My email address is hkkaram@yahoo.com. PLEASE HELP!! I have already spent 5 long hours trying to get this stupid “Profile dosent exist” msg from not appearing.

  43. cbhacking on August 7, 2007

    Thanks for the guide! However, I’m getting a major problem when I try to log in with my newly moved account: It starts to log in, then says “Logging Out” and returns me to the welcome screen.

    Logging in as another user and going to the event logs, I’m getting a message that “Windows has detected your registry file is still in use by other applications or services. The file will be unloaded now. The applications or services that hold your registry file may not function properly afterwards.”

    Also, the user I log in as (the one whose profile directory was created after I had changed the Profiles path in the registry) is using a temporary profile folder (D:\Users\TEMP; the account name is not TEMP or anything like it).

    I tried undoing the registry changes but got a very broken account (most programs either would not run, or had lost their data files). I’d really like to avoid re-creating my primary account - I have all the personal files backed up but there’s a lot of configuration data I would lose - but unless I can get past the log-in-then-instantly-log-out issue, I’m not seeing much alternative.

  44. Jase on August 20, 2007

    God so messy… I need to write a better guide but I got there in the end. =)

  45. Dave on August 29, 2007

    I opted for the alternative route and created a custom boot DVD of Vista using the WAIK and Business Desktop Deployment 2007 program (free downloads from MS). This is not something I recommend if you have a fully working PC as I trashed mine but was in the fortunate position of being able to wipe clean and start again.

    If you opt for this route then you can set the ProgramData and User folders to be D:\Users or whatever AND have it create your partitions etc - word of warning though, this route will completely wipe whatever disk Vista detects as your first useable HDD (which bizarrely for me was the disk I DIDN’T want it to!) and make a 100% size partition (400GB NTFS for me :S). I am a little hazy on details as I did all this back in January - March 2007. I do remember that I ended up buying a bunch of DVD+RW disks as I was making coasters from DVDs at an alarming rate.

    In the long run, this is probably the better solution as the system is then installed in this configuration. I seem to recall I also had to make some registry changes as MS have hardcoded some user paths for some insane reason?!

    Quite why you can’t just have an advanced install option and say “set /home to this disk”… err I mean \Users! That would make life so much simpler.

    Dave

  46. rob on August 31, 2007

    Could someone explain to a novice like me what Sven means by “I linked in my separate partition under C:\Users”? I tried to follow what he said but I couldn’t get it to work.

    “you go back to the registry (see steps 4-7) and restore the original settings.”

    does that mean restore them to “c:\..”? or “%SystemDrive%\..”?

    thanks

  47. Roger Hendriks on September 1, 2007

    After doing this Vista update failed and I made a symbolic link to solve it. More info:
    http://rogerhendriks.blogspot.com/2007/09/moving-vista-users-directory.html

  48. Ingimundur G. Nielsson on September 26, 2007

    Thanks Joshua for the great guide. However you might want to add the information from Roger Hendriks regarding the symbolic links to help with Windows Updates.
    I was unable for a month to install the KB938979 update. Then I created a symbolic link c:\users to d:\users and changed the ProfileList in the registry to point to the original C:\Users (symbolic) folder. (I changed both the user keys and the folders in the ProfileList key itself.
    This saved me the headache of reinstalling Vista and dropping the idea of storing my User files on a separate partition :)

  49. Greger Lindstrand on September 26, 2007

    O´boy! How I want to do this trick. Unfortenately I don’t trust myself with beeing able to “fix it” when something goes wrong. It’s one thing to follow step by step instructions. It’s another to try to get back if anything doesn’t go as planned during the steps.
    Hence, i really, really need a program that can do this for me. But I found nothing during my search on the net.

    I want to put all user data on a physically separate harddisc for all the reasons given above.
    Further more I would like the PC with dual boot (XP & Vista) to use the same user folder (possible?.
    3 different physical harddiscs;
    Disc 1 => XP
    Disc 2 => Vista
    Disc 3 => Userdata I.E everything I create myself.

    So, I want but I can’t sigh.
    Do anyone know of a prog that could possibly aacomplish this?

  50. [...] document folders cleanly to my data partition. I went out and searched on the web and came across a post that shows how to move your entire “Users” folder from one drive to another. I followed [...]

  51. DoWhatJohn on October 12, 2007

    Another approach that may be worth trying is that which I have successfully used under XP for hardcoded folders that cannot be moved by altering the registry.

    You could convert the original folder to a junction point which points to the new location on the other partition.

    This should move everything safely, allowing independant partition backup, while not having to change the registry at all (everything still thinks the default works).

  52. Joe on October 19, 2007

    Well, I’ve successfully done this a few times before. This time, my computer doesn’t seem to like it. It seems after I finish doing the search and replace, my normal everyday user account (not admin account) doesn’t download any files. Another thing is that I can’t keep more than one tab of Internet Explorer open before it freezes, and that is on all accounts, including admin. Could this be happening because I do the search and replace on my normal user account after doing it on the admin account? PLEASE RESPOND! This is the second time I’ve unsuccessfully tried doing this. I was seriously about to smash my laptop against the wall the other day (no lie)

    Anyway, could my problems be because I used search and replace on the admin user as well as my everyday user name?

  53. Stormblade on October 25, 2007

    Hey Joshua,

    I have not been able to get this to work. After step 8 when I try to log in as a user that has not logged in before I can not. It gives me an error about Profile Service failing and tells me it can not load the profile. I am able to log back in with the profile that I was using but not the new one.

    When I changed the registry keys back then I was able to but of course it put it back on C:.

    I have just done a clean install of Vista and for some reason I don’t have a c:\users\default. The only thing I’ve done thus far to Vista is to run Windows update and update everything.

    Some help would be most appreciated. I am new to Vista and I use a program called Deepfreeze. Having things going to the same drive as my system drive is a pain.

  54. Stormblade on October 25, 2007

    Ok so my Default folder was hidden. I think I managed to get things working thus far. Had to head to work before I was done but I successfully created a profile that appeared in the new location. I left certain paths alone this time like the Default and ProgramData.

    I tried renaming the Users directory at the old location but couldn’t. I assume its because its still being used in some way so I’ll wrestle with that after work.

  55. Yesenia on October 28, 2007

    I was wondering if you knew how to change the name of the user profile?? I bought a new computer from a friend and it has his name…I would really like to change it. In the local disk c, under user profiles, I tried left clicking and going to the properties and where the name is it appears gray instead of black text, so I can’t click it and rename it. Any ideas??? Thanks!

  56. takis on November 1, 2007

    unable copy userprofile

  57. Roger on November 12, 2007

    I too was anxious to learn how to remap user directories to a new location, and I found that all the info that is needed is within this “story”, but I too became a little confused, so let me see if a few “user tips” might help:
    1) you don’t need to remap the info in regedit except as shown in 5-7… all other user info is more easily “remapped” by using the mklink /j command.
    2) I didn’t have any luck with the icacls command, but then @ EOD all you really need to do is to set the security for the user’s directory to the appropriate user’s account. This is more easily done via right-click on directory in the Security dialog and adding the user and setting permissions for that user to “full control”. If you don’t set the user’s directory security for the user accessing the directory you end up with LOTS of problems w/ IE not being able to print (get temp directory permissions issues messages) and Outlook and other programs having problems as well. All these error messages went away once the user’s directory on the destination drive was assigned to the user’s “Full control” security permissions.

    3) Apparently you need to rename the source directory prior to using the mklink command (probably obvious to “most”). Since C:\users\joeblow already exists, mklink doesn’t overwrite the directory name in its quest to create a junction to the new directory structure. I found that renaming the c:\users to something else preserved the original settings so that I could reference them to resolve any other premissions issues (there were none once I figured out how to set security permissions).

    4) Step 8 is key to getting all this to work. You need to be able to use a new administrator account after you perform steps 5-8. Don’t be anxious to get rid of this account as it will act as “home base” if you need to sort out any remaining issues. You need this account basically to allow all other account files to not be “in use” which would cause you to not be able to copy those files (correctly).

    5) renaming directories in Vista often fools you into thinking the folder name has not been changed (seems like a Vista feature). You can verify the name has actually been changed by using cmd “dir” to view directory names.

    6) I too get a little paranoid about editing the registry… Try to remember to export the registry prior to making changes so you have something to reference if you need to recover info.

    Sooo…. here is what I did - seemed to work pretty well.
    1) create a new admin account if necessary.
    2) Regedit the Default, Public, and ProfileList to the “new location” after creating a full registry export.
    3) restart system & login to new admin account.
    4) copy (actually it does a merge) c:\users to \users (you may want to make another copy as well - your choice).
    5) set the \users\ directory security for each user to the appropriate user’s account as “full control”.
    6) rename c:\users to something else like c:\oldusers
    7) create new c:\users directory (I did this from cmd window using “mkdir c:\users” ;) 8) mklink /j c:\users\ \users\
    9) login as a different user.
    10) display “documents” from Windows Explorer favorite links - everything should display as it did previously.
    11) run IE or your favorite browser and try to print-preview the page - should show correctly and not error (errors typically show permissions have not been set for the user’s account).

    As long as you have the new admin account to use, you should not have issues with experimenting with the other user accounts. Once you feel comfortable that everything is working correctly w/ the other accounts, you can either disable or remove the admin account if it was created only for this reassigment / move.

  58. Roger on November 12, 2007

    I’m not certain what you are trying to do in renaming profiles.

    If you are trying to get your own directory structure, rename the account “username” in control panel, then find the user account directory in the profilelist in the registry, and change that to the new username. By using another admin account you should be able to rename the \users\ directory to match assigned in the profilelist. Since the account that was using the directory has not changed (except for the user’s name) I suspect you should not need to reassign the security permissions for the directory.
    Don’t forget to mklink /j c:\users\ \users\.

    If that doesn’t work for you, create a new account. I still have not found a way to remove the “initial user” account info that is imbedded in the OS during installation that appears to be referenced in every subsequent app install. If you are trying to get rid of that, you probably (still need to) reinstall the OS.

  59. David on November 27, 2007

    I am running IE7 in protected mode and there was one other thing I had to do. I needed to set the correct integrity level on the :\\\AppData\Local\Temp\Low using the following command:

    icacls :\\\AppData\Local\Temp\Low /setintegritylevel (OI)(CI)low

  60. Konny@de on November 27, 2007

    Hi all together,
    i change the users-folder already since W2kPro.
    And i know an easier way.
    !!! Make a good backup of your system
    !!! inkl. systemstate (important)

    o Create a new user, where you never need again
    !!! with administrator rights !!!
    o make a selective backup of the Users folder eg.
    C:\Users\.. The
    o then restore the whole backup to the new destination.
    o Change the pathes into the registery ..ProfileList and below…
    o restart your computer
    o logon normal administratur-account
    o check, where you are at cmd prompt
    o voila, you are already at the new destination!

    Ok, try it, but you should have some OS expierience !!!

    Greetings from Germany

    Konny

  61. Chris Wright on December 12, 2007

    The WOW starts now eh?

    What a complete pile of crap Vista is. I’ve run into this problem as well. How unreasonable of users wanting to locate their personal data on a separate partition from the OS.

    I think we know what MS developers have been doing for the last five years. “I know, how can we completely bugger up something that’s worked perfectly well in previous versions of Windows”.

    What exactly was wrong with being able to relocate your ‘My Documents’ folder? Now we have to go through this ridiculous long winded process just to get our personal data onto a separate partition.

    I guess this is what MS define as product differentation. How else can they justify charging for Vista.

    Oh I’d like to make a change to my network stack. Great it’s now buried three extra clicks away. Oops I won’t bother as Vista’s network file copy is useless. OK I’ll uninstall a program, I’ll just go to ‘Add/Remove Programs’. What it’s not there. Oh look they’ve renamed it to a far more ambiguos ‘Progams and Features’. Why?

    The WOW starts now!

  62. Maximus on December 20, 2007

    I would like to see a continuation of the topic

  63. [...] If you want to move the entire users structure, havea read of this: Change User Profile Folder Location in Vista Joshua Mouch [...]

  64. Andy Ursa on February 25, 2008

    Hi! I just wanted to share my frustration with this and warn others.

    1. First and foremost I’d like to give Micro$oft a dreadful and utterly painful kick in the ass for making this such a hassle. I had to get that out of the system.

    2. Please note in the beginning of the article that this process will most likely take 5-6 hours. I wasn’t prepared for that. Of course it depends on how many files you’ve got. I’ve got a 3 year old machine with roughly 400000 files on it (for comparison).

    3. Please also give a note in the start of the article that you’ll need 3x the space your current users account use. I wasn’t prepared for the second copying (step 11).

    4. Please warn people that they can’t make another user called the same as the first one (I renamed my first admin user to some gibberish, then made another one with the same name as the first, hoping that this would have me access the files). But this will only make a “_2″ after the name in the Users folder.

    5. Please please please please pretty please give some examples of a good x64 search & replace registry editor for Vista 64-bit. I’m going utterly mad trying to find one amongst the 100+ shameless pieces of dung out there.

    6. Tip: make copies of the bookmark file of this page and put it easily accessible since it’ll disappear when you change user.

    7. Congratulations on making a highly useful guide like this. I hope you’ll take my updates into consideration. I am very grateful even though I kinda don’t sound that way right now.

    Best wishes!

  65. Andy Ursa on February 29, 2008

    Hi! Just wanted you all to know that my trial resulted in a corrupt Vista. I had to turn back at some point because my new user got corrupted. Then I saw that my old user was corrupted too. I found out that I hadn’t reinstalled windows for a couple years, so I could just do that instead (I had more than 800,000 files on my C: drive now!)

    Massive negative kudos to Microsoft for ruining many people’s day. Kudos to the people here for trying to help.

  66. thehabgroup on February 29, 2008

    Thanks for this information. I have tried it and it works.

  67. oliverabc on March 1, 2008

    For the issue on newly created users that can’t login, it seems to be an access right issue on copy of “default” user. During the copy it has lost some access rights and is only accessible to admin users, I added access to all users:

    - select security tab on properties of “default” user copy, e.g. “d:\users\default”
    - add read/execute for “all users” (you can compare with original “%SystemDrive%\users” ;)
    - login with a new user

    NB : I also recreated some links on “Default User” and “All users”, I don’t know if it has any effect. I used F8/safemode to copy my users directories.

  68. [...] mit der man das Profilverzeichnis einfach verlegen kann. Eine saubere Lsung findet man unter Change User Profile Folder Location in Vista Joshua Mouch. Man verschiebt die Ordner ffentlich und Default auf die gewnschte Partition / Platte und ffnet [...]

  69. SHP on March 12, 2008

    I have an easier solution that you may want to consider. I learned about it here:
    http://caskater4.blogspot.com/2007/09/moving-your-data-where-you-want-in.html.

    I did the following:

    1) Created a new partition (”d” ;) for my data.
    2) Backed up up my drive (just in case).
    3) Loaded the Windows Vista installation disk and got to the command prompt.
    4) Once at the command prompt, I entered the following commands:

    robocopy C:\Users D:\Users /MIR /E /XJ [Enter]
    rmdir /S /Q C:\Users [Enter]
    rmdir “C:\Documents and Settings” [Enter]
    mklink /J C:\Users D:\Users [Enter]
    mklink /J “C:\Documents and Settings” D:\Users [Enter]
    The robocopy took about 15 minuted for 5 gigs worth of data. The other commands took no time at all.

    5)I exited and rebooted.
    6)Voila. I was good to go.

    When I look in my c partition, I see “junction pointers” for c:\Users and c:\Documents and Settings both pointing to d:\Users.

    Everything seems smooth and I haven’t noticed any slow down.

    The only issue I may have concerns backups. Apparently some programs will not create a good image of a partition that includes a junction pointing to a different partition. These programs will try to image the other partition as well. I’m going to experiment and see if this really is a problem or not.

    Good luck.

  70. SLewis on March 22, 2008

    This posting was the closest thing to my specific issue. The person who put my system together (WinXP sp2)somehow put his name in and it shows up when you boot. Windows login and Mr. J is the default, is in the C:\Documents and Settings\Mr J (has a folder and resembles a user account)…but does not show up as a user account. It gets stranger…when you go into control panel/user accounts and change the way users log on or off…and if you activate the welcome screen there are 2 accounts you can switch between “admin” and “graphics” (both administrator accounts) but there is an account called “NET” that shows up that ibut cannot be accessed and doesn’t show up when I change the login to standard windows login where there are 3 available accounts ‘different names’with no password required.

  71. David on March 23, 2008

    Step 1 - problem with copying C:/Users/Default to D:/Users/Default, it says operation cannot be completed as:
    ntuser.dat, ntuser.dat.log1 and .log2 and userclass.dat and log1 & 2….
    are being used by another program. All applications bar browser, and explorer and copy window are closed. Options are to “try again” or “skip”. Do you know if this is a problem (to skip) or if so how to get round this?

    Many thanks

    David

  72. Pau on March 29, 2008

    Hi there! I’m using Vista and I can’t change the name of the “main user.”

    For example it’s C:\Users\OldUserName

    How do I change it to C:\Users\NewUserName ?

    I would greatly appreciate those that will respond to this! Please email me at pau_xo@yahoo.com

    Many thanks!

  73. chusteczka on March 30, 2008

    Thank you Joshua for the useful information.

    Thank you David on November 27, 2007; for the useful information regarding setting the integrity levels. I could not have solved that problem without your help. Run this command from the command line.

    icacls D:\Vista\Users\\AppData\Local\Temp\Low /setintegritylevel (OI)(CI)low

    @ David on March 23, 2008; those files may be skipped since they are not needed and will be automatically recreated when the system needs them.

    @ Pau on March 29, 2008; no, you may not change the name of the initial user. This is an MS Windows issue where the first user created is the “Admin” user. It is often recommended to name the first user, “Admin”, for this reason and provide it with Administrator privileges. From there, you may create your own naming mechanisms but it is useful to create a restricted “Home” user if numerous people will access the same computer but do not need their own account.

  74. chusteczka on March 30, 2008

    Now I see why David’s original command was not precisely correct. The webpage removes certain brackets. Here is the command that worked for me. You may provide your own director and username.

    icacls D:\Vista\Users\username\AppData\Local\Temp\Low /setintegritylevel (OI)(CI)low

  75. UnIForM on March 31, 2008

    Hi

    I apologize for my English but I would do many thanks to SHP (12 March) for his great solution.

    It works very well on my computer and on a computer of a friend.

    Thanks a lot !

  76. randman on April 4, 2008

    I’m a little hesitant to move the entire users directory, as oppossed to just moving individual users. What if you were doing some sort of maintenance on your PC such that the new Users hard drive is not available? Or maybe it crashed and you need to restore it to a brand new drive (which wouldn’t be a problem if you were using something like Acronis to restore outside of Vista, but that’s another story).

    Would it be possible to login to Windows Vista even if the users drive isn’t available? Or will you have trouble logging in since the user’s entire folder is in the crashed drive?

    The other approach I’m considering is moving most users over to another drive, but keep a user’s folder (that I normally don’t use for loggin in) in the system drive. For example, keep the Administrator’s home folder in the system drive. Then, if something goes wrong with the users drive, I know I can still login okay as Administrator, since its folder is still in the system (C :) drive. Or, should I not worry about this and go for the more aesthetically pleasing approach of moving the entire Users folder to a non-system drive?

  77. Firas AG on April 14, 2008

    Hi there! I’m using Vista and I can’t change the name of the “main user.”

    For example it’s C:\Users\OldUserName

    How do I change it to C:\Users\NewUserName ?

    I would greatly appreciate those that will respond to this! Please email me at
    firas.abugharbieh@kulacom.jo

  78. [...] I have had some fun with Vista lately. My C: drive was approaching capacity and Vista told me that I couldn’t extend it. I succeeded in the end but it was unreasonably difficult. Vista makes simple things needlessly complicated, like keeping your software and data separate, e.g., (read how to change the user profile location in Vista). [...]

  79. Robert J. Moore on April 23, 2008

    Just goes to show, Microsoft have a huge body of developers with infinitely extendable system drives.

    They really need to employ some business/systems analysts (like me) who still live in the real (frustrating) world where laptops can’t keep up with my typing (60wpm) even if they have dual core processors.

    Personally, I am about to give up on moving my profiles as I can not afford to lose yet more time to ill-behaved systems.

    No wonder people love to hate Microsoft (and to a lesser degree Intel)- what should be simple is made difficult. As far as I can see, if I need to start messing with symbolic links, I might as well go the whole hog and install Unix or Linux or something else other than windows.

  80. Bakst on April 23, 2008

    This is *exactly* what I was looking for! Brilliant, mate, I’m so glad this worked. Not a single hitch in the process.

    Thanks!!

  81. Bakst on April 23, 2008

    …I might add, as a possible extra step at the end, that I had to manually copy (one by one) those hidden files that look like shortcuts but aren’t. Actually, I’m not even sure it was necessary, since everything seems to be running smoothly, but I did it as a safety precaution anyway, to make sure the original folder and the copy matched up.

    Cheers again! -ab

  82. darth.mongo on May 7, 2008

    Instead of going through all these steps to possibly corrupt your registry (and therefore your system), couldn’t you simply copy the profile to the new drive, partition, sharepoint, etc., and simply go to the properties of the account in Computer Management and change the profile path there under the Profile tab? Seems a lot easier to me.

  83. ridzuan on May 8, 2008

    how do we change the folder name of the current user to a new one? though i can change the user name (set during the initial vista setup) to a new one (control panel-user accounts-change your account name), the folder for that new user name still retain the old name…?

  84. Christoph on May 10, 2008

    Hello and many thanks for the description and the investigation.
    But please:
    Why, after 20 years of creating OS, is still nobody able to just ask at the installation on wich partition to install the unser profiles.
    When I see all the work done for graphical giberish I just doesnt understand why something so easy in comparision shouldn’t be possible.
    I can someone explain me, why we pay for updates that are written for our eyes only. For God sakes Windows is an OS, not a TV show.

  85. Joe Callahan on May 12, 2008

    Followed directions with pretty good success and few difficulties until trying to download some drivers. Followed original insturctions on a clean install.

    The difficulty I’m experience may cause me to have to back out and re-install. I am unable to download from Internet Explorer. Instead of the normal Run/Open, Save Dialog box, I get one that appears to run but the download never progresses past 0%. Just hangs.

    Has anyone run into this. I will try reset some permissions but this seems different to me.

    Thanks!

  86. Russell Lang on June 8, 2008

    I used the method described in this article at the time I installed Vista in 2007. Up till a few days ago I thought it had worked well. I have two programs which don’t behave well on Vista, in spite of the suppliers claims that they do. I thought they were just badly written. Turns out they rely on file virtualisation. For some reason, I don’t have any VirtualStore directories at all. So programs that insist on writing to “C:\Program Files” fail to work when you have moved all user files to D:\Users.
    Has anyone else had this problem?

  87. Jeff Cooper on June 29, 2008

    I just moved my users directory to D:\Users on two Vista systems, and everything seemed to be working out fine…until I tried to share users files on my network. If I try to share a folder, it ends up sharing my entire Users directory! Has anyone else had this problem? I try to share D:\Users\Jeff\Movies, and it ends up sharing D:\Users, so not only are all my user files shared on the network, but all files from every user on my system.

  88. Hauke on July 8, 2008

    Hi,

    for me, the following steps are a bit easier in vista:

    1)

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

    change “Profiles Directory” as desired to the other partition

    2) Create a new user - its profile will be created at the new location, accessible and usable for every program

    3) Copy essential files to the correct place

    4) voila

    It is like an unattended installation after you installed vista :)

    As I am too lazy creating an unattended installation, these steps are the first I take after reinstalling.

    Hauke

Leave a reply