[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: PATH



Bonjour,

Le 25 Jul, Quentin Saderne a écrit:
> Bonjour,
> 
> Ou est-ce qu'on met le PATH commun à tous les
> utilisateurs ?
> 
> Je croyais que c'était dans /etc/profile
> mais j'ai ajouté un répertoire et ca fait rien.
> 
> Pourtant profile c bien pour les shells de login non ?
> C'est pas ca qu'il faut ?
Malheureusement, cette question n'a pas de réponse simple. Tout cela
dépend de la manière dont tu te connectes à ton ordinateur. C'est le
cauchemar des administrateurs (juste après la création d'un fichier de
conf pour sendmail ;-)...

En gros (mais vraiment en gros)
Si tu te connectes sur un terminal virtuel (la console kwoa), alors
/etc/profile est lu par les shells sh, bash, ksh, des utilisateurs.

Si tu te connectes par un truc graphique. Ton shell n'a rien a voir dans
le mécanisme de connexion. Et donc /etc/profile n'est pas lu. Les
réglages dépendent donc de plusieurs choses : le display manager, les
script de lancement de la session (unifiés en woody), le contenu du
~/.xsession etc. etc. etc...

Maintenant, pam vient aussi mettre son nez la dedans. Si tu as pam.env
dans la pile des modules d'authentification, alors le contenu di fichier
/etc/environment est lu, mais ce n'est pas très soule car on ne peut pas
y faire des test, seulement des affectations simples de variable. De
plus, le module pam_env.so étant parfaitement optionnel, tu ne peux pas
garantir que le fichier sera lu.

Par principe, on ne met JAMAIS de variable d'environnement dans les
fichiers .machinsrc, car des process lancés avant tes shells (genre le
window manager, le gestionnaire de session etc...) n'ont dans ce cas.
pas le meme environnement que les shells. Il y a toutefois une exception
pour la variable LD_LIBRARY_PATH à cause du linker dynamique pourri de
linux (Ah la beauté d'un Solaris ! ).

Maintenant, si tu utilises une woody, tu peux faire un truc bien, qui
marche pour (presque tous les cas) :
Tu mets ça dans /etc/profile
. /etc/X11/Xsession.d/99zzzzz-monenv_pourtous

Et tu faits toutes les magouilles de variable d'environnement (PATH y
compris) dans le fichier /etc/X11/Xsession.d/99zzzzz-monenv_pourtous

Voila, mainetnant, que tu te connectes en console, ou en mode graphique,
tu devrais avoir le même environnement.

Pour LD_LIBRARY_PATH si tu en as besoin, faut le mettre dans 
/etc/X11/Xsession.d/99zzzzz-monenv_pourtous et dans le .bashrc (ou autre)
de chaque utilisateur.

	Christophe
-- 
char*p="[)1++++++11+(QI1)9191991)9)1)(II1)919Y91)9)1)(AK+9;991+3*(9I1*IY991)Q1\
)(1I1))A91991)Q1)(+)1)1++9;)Q1+(";main(_){while(*p){for(_=*p-32>>3;_;--_)
putchar(' ');if(!(_=*p++-32&7))putchar('\n');else while(_--)printf("_/");}}


-- 
To UNSUBSCRIBE, email to debian-user-french-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: