web-dev-qa-db-fra.com

Variables d'environnement - où sont-elles stockées par Linux, comment puis-je les changer et est-ce sûr de le faire?

J'essaye de configurer une version de source d'une ancienne version de gcc sur ma machine de développement. La documentation met en évidence plusieurs variables d'environnement à modifier pour ce faire. Je me demandais comment faire cela et aussi où Linux les stocke et si un redémarrage du système est requis pour que toute modification soit enregistrée?

11
mathematician1975

Les variables d'environnement globales de votre système sont stockées dans /etc/environment.
Toute modification apportée ici sera reflétée dans tout le système et affectera tous les utilisateurs du système. De plus, vous avez besoin d'un redémarrage pour que les modifications apportées ici prennent effet.

tilisateur niveau Les variables d'environnement sont généralement stockées dans les fichiers .bashrc et .profile de votre dossier de base. Les modifications apportées ici ne concernent que cet utilisateur particulier. Fermez et ouvrez simplement le terminal pour que les modifications de configuration aient lieu.

Edit : Si vous ne souhaitez pas redémarrer ou redémarrer votre terminal, vous pouvez utiliser la commande source.
Par exemple. source /etc/environment ou source .bashrc

10
Hashken

Ce dont vous avez besoin, ce sont des changements temporels locaux. Vous n'allez pas en avoir besoin demain, quand vous faites autre chose, cela peut casser ce que vous faites demain. Cependant, vous pouvez l'enregistrer en tant que script de construction/fichier de compilation pour pouvoir l'utiliser demain.

export VARIABLE=value
export VARIABLE2=another_value
gcc …

ou

VARIABLE=value VARIABLE2=another_value gcc …

remarque: Si vous utilisez make, le premier exemple ne fonctionnera pas. Make démarre un nouveau shell (sh) pour chaque ligne.

2
ctrl-alt-delor

Vous devez placer vos variables d'environnement utilisateur par utilisateur dans ~/.pam_environment

Créez le fichier s'il n'existe pas. Voir ici

1
Jules Moules