Est-il sûr de modifier la variable d'environnement PATH globale?

8

Je viens de découvrir récemment que je ne pouvais pas exécuter mysql sans taper le chemin complet ou être dans le bon répertoire - sauf si j'ai ajouté le chemin à la variable d'environnement PATH.

J'ai réussi à le faire et maintenant je peux exécuter mysql au démarrage de ma ligne de commande. Je suis paresseux et je ne voulais pas taper tout le chemin juste pour exécuter mysql à partir de cmd. De plus, je ne connaissais aucune autre façon de procéder. Je suis tombé par hasard sur la solution sur un forum.

La seule chose que je me demande maintenant, c'est si c'est OK / sûr à faire pour tous mes programmes.

Bien que ce ne soit pas pratique, c'est juste une précaution.

J'ai remarqué que dans certains tutoriels en ligne, certaines personnes avaient une variable PATH pour leur variable utilisateur alors que je n'en avais pas. Je n'ai trouvé la variable d'environnement PATH que dans la section des variables système. Est-ce une mauvaise chose?

Le seul compte sur mon PC est le compte administrateur. Du moins, c'est le seul compte que j'utilise.

Puis-je obtenir une certaine clarté / entrée à ce sujet?

ThatRandomGuy
la source

Réponses:

8

Il n'y a généralement rien de dangereux à ajouter des répertoires PATH. Cela ne peut que vous causer des problèmes de deux manières:

  1. Lorsque vous utilisez une invite de commande, vous pouvez accidentellement exécuter un programme que vous ne vouliez pas. Là encore, si vous connaissez les programmes que vous mettez sur votre PATHordinateur, rien de malveillant ne se produira.
  2. Les programmes peuvent y trouver des DLL qui ne sont généralement pas chargées. L' ordre de recherche de DLL spécifie que si une DLL demandée ne peut pas être trouvée dans des emplacements normaux, elle sera finalement recherchée aux PATHendroits. Si, par exemple, un programme charge éventuellement un module en essayant de charger une DLL par son nom et sans se soucier de son échec, une personne ayant le contrôle d'un PATHdossier pourrait faire en sorte que ce programme charge une DLL arbitraire si une autre avec son nom n'est pas trouvée plus tôt dans la recherche. Soit dit en passant, ce problème de sécurité possible explique pourquoi il est une mauvaise idée de tenter de charger des DLL qui peuvent ou non être présentes. Les programmes bien écrits n'auront pas ce problème.

Il est également possible de maximiser la PATHlongueur variable , mais ce n'est pas vraiment un problème de sécurité.

Concernant le fait que vous ne PATHtrouviez pas la variable utilisateur : si vous créez une version par utilisateur de cette variable, votre effet PATHsera celui du système automatiquement combiné avec votre version par utilisateur.

Ben N
la source
1
Merci. Vous avez à peu près couvert tout ce dont j'avais besoin d'assurance. Très apprécié. Normalement, je n'aime pas accorder des réponses acceptées tant que je n'ai pas reçu beaucoup de commentaires, mais votre réponse a couvert tout et plus encore. De plus, je doute sincèrement que quelqu'un d'autre prendrait la peine de répondre à ma question.
ThatRandomGuy