How do I change HOMEDRIVE HOMEPATH and HOMESHARE in Windows XP?
Solution 1
I had a similar problem, which caused problems with msysgit. Here is the solution I used, and it definately worked for me. This answer is similar to this and that SO post.
-
If you are on Windows 7, you can skip this step. If you are on Windows XP, download and install Windows XP Service Pack 2 Support Tools which contains
SETX
, a utility, described on SS64 and technet, that lets you set permanent system and user variables. You must have administrative rights to set global system variables. The basic usage isSETX <variable> "<value>" [-m]
. -
Add the following script to your startup folder - W7:
"C:\Users\<username>\Start Menu\Programs\Startup"
and XP:"C:\Documents and Settings\<username>\Start Menu\Programs\Startup"
.SETX HOMEDRIVE %SYSTEMDRIVE% -m SETX HOMEPATH "\Documents and Settings\%USERNAME%" -m SETX HOMESHARE "\\<server>\<share>" -m SET HOME=%SYSTEMDRIVE%\Documents and Settings\%USERNAME% SETX HOME "%HOME%" SET TEMP=%HOME%\Local Settings\Temp SETX TEMP "%TEMP%" SETX TMP "%TEMP%"
Note: SETX
variables are permanent, but are not available until after the script runs, so use SET
to create temporary variables in your script. Also uses double quotes around the value you want to set your variable to in case it has spaces, but this is not necessary for SET
. Machine variables are set with the -m
option; user variable is the default. Windows 7 has many more options and uses /
instead of -
.
Solution 2
Problem occurs with TortoiseGit when working out of office, where network drive is not connected.
Changing HOME
, HOMEPATH
does not help!!
Solution:
mkdir c:\home
net use g: /delete
subst g: c:\home
Where g:
is network drive.
Solution 3
There's a good chance that whatever you change will just get put back the next time you attach to the domain (via Group Policies or alike).
Have you considered asking your company's IT folks if they can change that for you?
Perhaps create a local user on the laptop for use when outside of the domain, that way you're not waiting for these slow-link shortcuts, nor are you trying to circumvent the domain user settings as laid out by the company.
Solution 4
I have a similar problem in my corporate environment, and developed a variety of hacks and work-arounds. With my current setup the following values are forced by the domain:
set HOME
HOMEDRIVE=G:
HOMEPATH=\
HOMESHARE=\\Server\Users\username
But with my workaround, the resulting mappings are:
HOMEDRIVE => G: => \\Server\Users\username => C:\Users\username
HOMESHARE => \\Server\Users\username => C:\Users\username
While other server paths / drive mappings go to the remote server:
O: => \\Server\Example => \\Real_Server\Example
\\Server\Example => \\Real_Server\Example
These have only been tested in Windows 7, but I would imagine that they will also work in Windows XP if you have the mklink tool.
Solution 5
I know I'm late to this thread, but I have got the same problem when my IT department changed group policies and my HOMEDRIVE has became M: instead for C: and HOMEPATH just "\" insted for "\Users \ [username]". I looked in Git code and found that it uses HOMEDRIVE/HOMEPATH combination only if HOME is not defined.
So I just defined HOME (which was fortunately not in GP) as "C:\Users \ [username]" and Git has found .gitconfig
again.
Related videos on Youtube
Luigi R. Viggiano
Software Engineer, Java and all related technologies, occasional blogger, you can follow me on Twitter @lviggiano, sometime I drop some code on github. If you use Java Properties files, try this: owner library
Updated on September 17, 2022Comments
-
Luigi R. Viggiano almost 2 years
I have got a laptop which is configured to have the user profile in a network drive. This is causing me a lot of headaches since the connectivity to my company is very slow. I want to relocate the profile of my user into a local directory. How do I do that?
Those are the settings at the moment:
C:\>set HOME HOMEDRIVE=P: HOMEPATH=\ HOMESHARE=\\SOMESERVER\_myuser$
The drive P is a network drive mapped to HOMESHARE.
I can't find where windows is setting those environment variables, not even in the registry.
The laptop is running Windows XP.
-
Admin over 13 yearsThanks, but the laptop is running Windows XP (I updated the question with this detail). And those variables are not visible nor editable from the system settings.
-
Admin over 13 yearsSome of them are just present in the environment for information, and are set/stored elsewhere. HOMEDRIVE/HOMEPATH are the home directory as set in the account's configuration in "Users and Accounts". Try running 'lusrmgr.msc' (local users and groups manager). Some of the advanced path settings are managed via that.
-
Admin over 13 yearsUnfortunately my user is a domain user (not local) so it's not listed in the local users and group manager.
-
Admin over 13 yearsThen you'd have to get it modded on the domain controller, which is where such things are kept for domain accounts. The other option is to just use a local account with access to the domain account's files for when you're offsite
-
Admin over 13 yearsThanks I'll check that (the domain controller). Found on Wikipedia: en.wikipedia.org/wiki/Domain_controller
-
Luigi R. Viggiano over 13 yearsThat's the beauty of Windows. Even if you are root somebody else decides what your OS will do.
-
Ƭᴇcʜιᴇ007 over 13 yearsNo that's the beauty of having a job where they supply and control the computers. OR it's the beauty of being able to unify and centrally manage a network full of company computers that users keep trying to hack at because they think it's their's. Windows has nothing to do with your boss deciding how you use company resources (notebook, network, etc.). ;)
-
Luigi R. Viggiano over 11 yearsThanks for the suggestion; at the end I managed to have some programs (like java apps, mingw, etc) use a different home folder; I had to configure or hack those apps to trick them, but it worked. I left the company now, so I cannot verify wether your solution applies well to my case, but your hacks are the things I was hoping to get when I posted this question.
-
nathanchere over 9 yearsNo that's the beauty of an ecosystem that makes it easy for power-tripping monkeys to play God with no care or concern for how it impacts productivity.
-
Alan B over 6 yearsNo it's the ability to manage hundreds of computers efficiently without users wrecking everything and is one reason why you don't see Linux or Mac desktops everywhere. Not everyone is a power user in the real world of businesses. We're not talking about coding shops.
-
Chad Schouggins over 6 yearsDude, you're my hero.
-
sigi_tm about 3 yearsThank you, I had the same problem with git (thanks to my IT department...) and now I solved it!