Alcuni hanno risposto dicendo che /etc/environment
è deprivato e / o non più usato in Debian, e questo è (come nella versione 7) falso.
Il file viene effettivamente letto da PAM, in particolare pam_env(8)
tramite un envfile
flag predefinito . La manpage indica anche questo valore predefinito nella sezione FILES.
I wiki citati (specialmente quello locale) affermano semplicemente che le variabili d'ambiente basate su locale ora sono pensate per essere presenti /etc/profile
. La loro affermazione "(nelle versioni precedenti di Debian, anche / etc / environment)" è vaga ed è nel contesto delle versioni locali.
Un rapido sguardo veloce /etc/pam.d
mostra:
root@box:/etc/pam.d# grep pam_env.so *
atd:auth required pam_env.so
cron:session required pam_env.so
cron:session required pam_env.so envfile=/etc/default/locale
login:session required pam_env.so readenv=1
login:session required pam_env.so readenv=1 envfile=/etc/default/locale
sshd:auth required pam_env.so # [1]
sshd:auth required pam_env.so envfile=/etc/default/locale
su:session required pam_env.so readenv=1
su:session required pam_env.so readenv=1 envfile=/etc/default/locale
Queste linee di configurazione sono additive e, poiché manca la prima envfile
, per impostazione predefinita /etc/environment
.
Tutto questo, ovviamente, si basa su qualunque binario che stai usando ( crond
, shell di login, ecc.) Sia compilato contro PAM.
Infine, ciò implica che altri sistemi che utilizzano PAM (ad es. RedHat) si comportino allo stesso modo, come si può vedere nella rispettiva manpage.