Discussion Locked

Change Profiles Location in NT4

0 helpful
12 replies
Closed to new repliesThis discussion is closed. It stays readable, but it takes no new replies.

I realize that NT is being replaced by 2000 but at my shop we are in no rush to change all the workstations over. However we are planning a change to all the workstations that will require a reload of the systems. When we do this I would like to move the users profiles directory (normally stored at %systemroot%\profiles) to a different partition on the hard drive (D: drive). This is to minimize fragmentation of the system drive. Does anyone know how to do this? I saw another Q&A that discussed doing this in 2000, which is good to know but as I said I am concerned with NT4.

Help is always appreciated! TIA

12 replies

by vagab0nd

To move the locally cached copy of the profile, you will need to know the security identifier (SID) of the user whose profile you want to move. You can identify the SID by using GetSID.exe from the Windows NT Server 4.0 Resource Kit.

Windows NT 4.0 stores the local profile information in the registry under the following key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
Under the ProfileList key, there will be subkeys named with the SIDs of the users who have logged on to this computer. (To find the profile information for the user whose locally cached profile you want to move, find the SID for the user with the GetSID.exe utility.) Inside of the appropriate user's subkey, you will see a string value named ProfileImagePath. ProfileImagePath should be set to a local path where you want to store the profile.

If you do not have a roaming profile and you want to maintain your profile after you change the locally cached profile path, copy the contents of your old locally cached profile folder to the new location set in the ProfileImagePath value.

by tsadowski

I wish to change the default location for new profiles rather than moving existing profiles. I do not want any profiles in the %systemroot% directory if at all possible.

by mckaytech

The answer above is from Microsoft's TechNet article Q214470. That article is interesting in that it tells you how to move cached profiles that already exist but doesn't say anything about altering the default location. It sort of implies that thedefault location is hard-coded to the %systemroot%\profiles directory.

But there is a registry key that allows you to define the path for the common (i.e. AllUsers) profile. It's in the same general area as the key mentioned in the article - you can find it by searching the registry for '%systemroot%\profiles'. If I recall correctly, it's under Explorer and called something like User Shell Folders. It is possible that changing this key might change the default but I haven't had the chance to try it.

paul

by msgtray

I must be missing something... There is a profile path block in the "profiles" button on the User Manager in NT4. I have successfully used this to create user profiles in "other-than-default destinations".

Your answer to the first question is that you only want the path different for new users. I understand that moving a profile intact is a little tricky but creating a new user profile in a specified location is built-in functionality.

by shanghai sam

The problem with this is that I have to manually create the profiles on the workstations. In my environment there are too many workstations and too many users for me to to this. What I need is a way to change where NT automatically stores user profiles. This way whena user logs onto a machine that they have not used before (and I have not set up for them) the profile is automatically created in d:\profiles. Thanks anyway though.

by doc001

Your question paired with your response to the previous given answers causes one to ponder in many directions. If your enviroment is a domain and a PDC is authenticating then you should have to do nothing more than change the "profile path" in "user manager". If you are using P2P then I wonder how one could log onto a workstation unless you have set up his account. When you create the account ensure that the users profile path is set to whatever drive you want the profiles stored. As for the accounts that have already been generated a script file using the "NET USER" command with the "profiledirectory" option should allow you to easily change the path of your current users. I just used this when adding a machine to act as a new PDC that would also store the profiles. It took me 45 minutes to change the location of the profile share and 45 seconds to modify the 1500 user accounts to look for and store the profiles in the new location. Hope this helps.

by tsadowski

The problem with making the change in the domain account, is that it just changes the path of the roaming profile. There is still a local profile created in "%systemroot%\profiles", which is precisely what I am trying to avoid. If I set up all Domain Users as Guests on the local workstations then there would be no problem with the profiles, but then I would have other issues. So, unfortunately, this doesn't help.

by cavedweller

I would convert all your profiles to roaming and store them on the sever in your directory of choice. You can set a system policy to always download the profile when a user logs in. This should avoid a lot of changes to the cached profile and reduce fragmentation.

by tsadowski

I think that this is the only acceptable solution. it appears that MS in their infinate wisdom did not include changing the default profile location as an option in NT4, fortunatly they corrected this mistake in Win2k.

This discussion is closed to new replies.