Le réglage le plus important est à faire dans les fichiers
commun d'initialisation des logins shells : /etc/csh.login
pour tcsh et /etc/profile pour bash.
Ceux qui n'obtiennent pas le bon PATH à partir de ces fichiers
sont : rsh, ssh, les éléments des
menus du gestionnaire de fenêtres sous X ne lançant pas
explicitement de login shell, les commandes lancés à partir
de inittab, les travaux de cron, les travaux des
démons comme magicfilter (lancé par lprd),
les scripts CGI (WWW), etc...
Si le PATH est fixé dans /etc/csh.cshrc, il sera
utilisé si rsh ou ssh lance des commandes sur
une machine distante où l'utilisateur utilise
tcsh/csh. Par contre, il n'est pas possible de régler
le PATH si l'utilisateur utilise bash/sh. Voici une méthode
pour ne garder le PATH que dans un seul fichier, par exemple
/etc/environnement-commun, dans lequel on écrit :
${EXPORT}PATH${EQ}/bin:/usr/bin:/sbin:/usr/sbin:/usr/bin/X11:/usr/local/bin:/usr/games:.
On peut ensuite l'utiliser à partir de /etc/csh.login
(pour tcsh
et csh)
set EQ=" " set EXPORT="setenv "; source /etc/environnement-communA partir de
/etc/profile (pour bash, mais pas pour le
vrai sh)
EQ='=' EXPORT="export " . /etc/environnement-communEt à partir de
/etc/environment (pour XDM)
EQ='=' EXPORT="export " . /etc/environnement-commun
Cette méthode marchera la plupart du temps, sauf que ssh
se plaindra des lignes contenues dans /etc/environment (ainsi
que des variables EQ et EXPORT). De plus, rsh n'aura toujours
pas le bon PATH s'il passe par bash.