Vous devez l'ajouter à votre ~/.profile ou ~/.bashrc fichier.
export PATH="$PATH:/path/to/dir"
Selon ce que vous faites, vous pouvez également créer un lien symbolique vers les fichiers binaires :
cd /usr/bin
sudo ln -s /path/to/binary binary-name
Notez que cela ne mettra pas automatiquement à jour votre chemin pour le reste de la session. Pour ce faire, vous devez exécuter :
source ~/.profile
or
source ~/.bashrc
Dans Ubuntu, modifiez /etc/environment . Son seul but est de stocker des variables d'environnement . À l'origine, la variable $PATH est définie ici.
Ceci est une pâte de mon /etc/environment fichier :
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Vous pouvez donc simplement ouvrir ce fichier en tant que root et ajouter ce que vous voulez.
Pour immédiat résultats,
Exécuter (essayez en tant qu'utilisateur normal et racine):
source /etc/environment && export PATH
Si vous utilisez le shell Z (zsh ), ajoutez cette ligne juste après les commentaires dans /etc/zsh/zshenv fichier :
source /etc/environment
J'ai rencontré cette petite bizarrerie sur Ubuntu 15.10 (Wily Werewolf), mais si votre zsh n'obtient pas le bon PATH , c'est peut-être pour ça.
Il existe plusieurs façons de le faire. La solution réelle dépend de l'objectif.
Les valeurs des variables sont généralement stockées dans une liste d'affectations ou dans un script shell exécuté au démarrage du système ou de la session utilisateur. Dans le cas du script shell, vous devez utiliser une syntaxe shell spécifique et export ou set commandes.
À l'échelle du système
-
/etc/environmentListe des affectations uniques. Autorise les références. Parfait pour ajouter des répertoires à l'échelle du système comme/usr/local/something/binàPATHvariable ou définissantJAVA_HOME. Utilisé par PAM et systemd. -
/etc/environment.d/*.confListe des affectations uniques. Autorise les références. Parfait pour ajouter des répertoires à l'échelle du système comme/usr/local/something/binàPATHvariable ou définissantJAVA_HOME. La configuration peut être divisée en plusieurs fichiers, généralement un pour chaque outil (Java, Go et Node.js). Utilisé par systemd qui, de par sa conception, ne transmet pas ces valeurs aux shells de connexion des utilisateurs. -
/etc/xprofileScript shell exécuté lors du démarrage de la session X Window System. Ceci est exécuté pour chaque utilisateur qui se connecte au système X Window. C'est un bon choix pourPATHentrées valides pour chaque utilisateur comme/usr/local/something/bin. Le fichier est inclus par un autre script, utilisez donc la syntaxe du shell POSIX et non la syntaxe de votre shell utilisateur. -
/etc/profileet/etc/profile.d/*Script shell. C'est un bon choix pour les systèmes shell uniquement. Ces fichiers sont lus uniquement par les shells en mode de connexion. -
/etc/<shell>.<shell>rc. Script shell. C'est un mauvais choix car il est spécifique à un seul shell. Utilisé en mode sans connexion.
Session utilisateur
-
~/.pam_environment. Liste des affectations uniques, aucune référence autorisée. Chargé par PAM au début de chaque session utilisateur, sans importance s'il s'agit d'une session X Window System ou d'un shell. Vous ne pouvez pas référencer d'autres variables, y comprisHOMEouPATHdonc son utilisation est limitée. Utilisé par PAM. -
~/.xprofileScript shell. Ceci est exécuté lorsque l'utilisateur se connecte au système X Window System. Les variables définies ici sont visibles pour toutes les applications X. Choix parfait pour étendrePATHavec des valeurs telles que~/binou~/go/binou en définissant unGOPATHspécifique à l'utilisateur ouNPM_HOME. Le fichier est inclus par un autre script, utilisez donc la syntaxe du shell POSIX et non la syntaxe de votre shell utilisateur. Votre éditeur de texte graphique ou IDE démarré par raccourci verra ces valeurs. -
~/.profile,~/.<shell>_profile,~/.<shell>_loginScript shell. Il ne sera visible que pour les programmes démarrés à partir d'un terminal ou d'un émulateur de terminal. C'est un bon choix pour les systèmes shell uniquement. Utilisé par les shells en mode connexion. -
~/.<shell>rc. Script shell. C'est un mauvais choix car il est spécifique à un seul shell. Utilisé par les shells en mode sans connexion.
Remarques
GNOME sur Wayland démarre un shell de connexion utilisateur pour obtenir l'environnement. Il utilise efficacement les configurations de shell de connexion ~/.profile , ~/.<shell>_profile , ~/.<shell>_login fichiers.
Pages de manuel
- environnement
- environnement.d https://linux.die.net/man/1/environment.d
- bash
- tiret
Documentation spécifique à la distribution
- Ubuntu
- Arch Linux
Connexe
Différence entre le shell de connexion et le shell sans connexion ?