Comment changer HOMEDRIVE HOMEPATH et HOMESHARE dans Windows XP?


40

J'ai un ordinateur portable qui est configuré pour avoir le profil de l'utilisateur dans un lecteur réseau. Cela me cause beaucoup de maux de tête car la connectivité avec mon entreprise est très lente. Je souhaite déplacer le profil de mon utilisateur dans un répertoire local. Comment je fais ça?

Ce sont les paramètres en ce moment:

C:\>set HOME
HOMEDRIVE=P:
HOMEPATH=\
HOMESHARE=\\SOMESERVER\_myuser$

Le lecteur P est un lecteur réseau mappé sur HOMESHARE.

Je ne trouve pas où Windows définit ces variables d'environnement, pas même dans le registre.

L'ordinateur portable fonctionne sous Windows XP.

Réponses:


27

J'ai eu un problème similaire, qui a causé des problèmes avec msysgit . Voici la solution que j'ai utilisée et qui a fonctionné pour moi. Cette réponse est similaire à ceci et cela SO post.

  1. Si vous utilisez Windows 7, vous pouvez ignorer cette étape. Si vous utilisez Windows XP, téléchargez et installez les outils de support de Windows XP Service Pack 2 contenant SETXun utilitaire décrit sous SS64 et technet permettant de définir des variables système et utilisateur permanentes. Vous devez disposer de droits d'administrateur pour définir des variables système globales. L'utilisation de base est SETX <variable> "<value>" [-m].

  2. Ajoutez le script suivant dans votre dossier de démarrage - W7: "C:\Users\<username>\Start Menu\Programs\Startup"et 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%"
    

Remarque: les SETX variables sont permanentes, mais ne sont disponibles qu'après l'exécution du script. Utilisez-les SETpour créer des variables temporaires dans votre script. Utilise également des guillemets doubles autour de la valeur que vous souhaitez définir pour votre variable si elle contient des espaces, mais cela n'est pas nécessaire SET. Les variables machine sont définies avec l' -moption; La variable utilisateur est la valeur par défaut. Windows 7 a beaucoup plus d'options et utilise /au lieu de -.


9

Il y a de fortes chances que tout ce que vous modifiez soit simplement remis à la prochaine fois que vous vous attachez au domaine (via les stratégies de groupe ou autres).

Avez-vous envisagé de demander aux informaticiens de votre entreprise s'ils peuvent changer cela pour vous?

Peut-être créez-vous un utilisateur local sur l'ordinateur portable pour l'utiliser en dehors du domaine. Ainsi, vous n'attendrez pas ces raccourcis de liaison lente et n'essayez pas de contourner les paramètres d'utilisateur du domaine tels qu'ils ont été définis par la société.


3
C'est la beauté de Windows. Même si vous êtes root, quelqu'un d'autre décide de ce que votre système d'exploitation fera.
Luigi R. Viggiano

9
Non, c'est la beauté d'avoir un travail où ils fournissent et contrôlent les ordinateurs. OU c'est la beauté de pouvoir unifier et gérer de manière centralisée un réseau rempli d'ordinateurs de l'entreprise que les utilisateurs continuent d'essayer de pirater, car ils pensent que c'est le leur. Windows n'a rien à voir avec votre patron qui décide de la manière dont vous utilisez les ressources de l'entreprise (ordinateur portable, réseau, etc.). ;)
cʜιᴇ007

3
Non, c'est la beauté d'un écosystème qui permet aux singes énergiques de jouer à Dieu sans se soucier de l'impact sur la productivité.
nathanchere

2
Non, c'est la capacité de gérer efficacement des centaines d'ordinateurs sans que les utilisateurs ne gâchent tout. C'est l'une des raisons pour lesquelles vous ne voyez pas les ordinateurs de bureau Linux ou Mac partout. Tout le monde n’est pas un puissant utilisateur dans le monde réel des entreprises. Nous ne parlons pas de magasins de codage.
Alan B

9

J'ai un problème similaire dans mon environnement d'entreprise et j'ai développé une variété de hacks et de solutions de rechange . Avec ma configuration actuelle, les valeurs suivantes sont forcées par le domaine:

set HOME
HOMEDRIVE=G:
HOMEPATH=\
HOMESHARE=\\Server\Users\username

Mais avec ma solution de contournement, les mappages résultants sont les suivants:

HOMEDRIVE => G: => \\Server\Users\username => C:\Users\username
HOMESHARE       => \\Server\Users\username => C:\Users\username

Tandis que les autres chemins d'accès / mappages de lecteurs vont au serveur distant:

O: => \\Server\Example => \\Real_Server\Example
      \\Server\Example => \\Real_Server\Example

Celles-ci n'ont été testées que sous Windows 7, mais j'imagine qu'elles fonctionneront également sous Windows XP si vous disposez de l'outil mklink.


Merci pour la suggestion; à la fin, j'ai réussi à faire en sorte que certains programmes (comme les applications java, mingw, etc.) utilisent un dossier personnel différent; J'ai dû configurer ou pirater ces applications pour les duper, mais cela a fonctionné. J'ai quitté l'entreprise à présent. Je ne peux donc pas vérifier si votre solution s'applique bien à mon cas, mais vos hacks sont ce que j'espérais obtenir lorsque j'ai posté cette question.
Luigi R. Viggiano

8

TortoiseGit pose un problème lorsque vous travaillez hors du bureau, lorsque le lecteur réseau n'est pas connecté.

Changer HOME, HOMEPATHça n'aide pas !!

Solution:

mkdir c:\home
net use g: /delete
subst g: c:\home

g:est le lecteur de réseau.

 


Mec, tu es mon héros.
Chad Schouggins

4

Ils sont dans les propriétés du système avancé. Sur Vista / Win 7:

  1. Cliquez avec le bouton droit sur "Poste de travail".
  2. Sélectionnez "Propriétés"
  3. Sélectionnez "Paramètres système avancés" (lien sur le côté gauche de la fenêtre)
  4. Sélectionnez "Avancé" (onglet)
  5. Sélectionnez "Variables d'environnement" (bouton)

2
Merci, mais l'ordinateur portable fonctionne sous Windows XP (j'ai mis à jour la question avec ce détail). Et ces variables ne sont ni visibles ni modifiables à partir des paramètres système.
Luigi R. Viggiano

2
Certains d'entre eux ne sont présents que dans l'environnement à titre d'information et sont définis / stockés ailleurs. HOMEDRIVE / HOMEPATH sont le répertoire de base défini dans la configuration du compte dans "Utilisateurs et comptes". Essayez d’exécuter 'lusrmgr.msc' (gestionnaire d’utilisateurs et de groupes locaux). Certains paramètres de chemin avancé sont gérés via cela.

1
Malheureusement, mon utilisateur est un utilisateur de domaine (non local), il n'est donc pas répertorié dans les utilisateurs locaux et le gestionnaire de groupe.
Luigi R. Viggiano

1
Ensuite, vous devez le faire modifier sur le contrôleur de domaine, où sont conservées ces informations pour les comptes de domaine. L'autre option consiste simplement à utiliser un compte local avec un accès aux fichiers du compte de domaine pour les sites hors site

Merci, je vais vérifier cela (le contrôleur de domaine). Trouvé sur Wikipedia: fr.wikipedia.org/wiki/Contrôleur_de_domaine
Luigi R. Viggiano

0

Je sais que je suis en retard sur ce sujet, mais le même problème survient lorsque mon service informatique a modifié les stratégies de groupe et que mon HOMEDRIVE est devenu M: à la place de C: et HOMEPATH vient juste de "\" installer pour "\ Utilisateurs \ [nom d'utilisateur] ". J'ai regardé dans le code Git et constaté qu'il utilise la combinaison HOMEDRIVE / HOMEPATH uniquement si HOME n'est pas défini.

Donc, je viens de définir HOME (qui, heureusement, n'était pas dans GP) comme "C: \ Utilisateurs \ [nom d'utilisateur]" et Git a .gitconfigencore trouvé .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.