Kilku odpowiedziało, że /etc/environment
jest to deprecjonowane i / lub nie jest już używane w Debianie, a to jest (jak w wersji 7) fałszywe.
Plik jest w rzeczywistości odczytywany przez PAM, a konkretnie pam_env(8)
przez domyślną envfile
flagę. Strona man podaje również tę wartość domyślną w sekcji PLIKI.
Cytowane strony wiki (zwłaszcza lokalna) jedynie stwierdzają, że zmienne środowiskowe oparte na ustawieniach regionalnych powinny się teraz znajdować /etc/profile
. Ich stwierdzenie „(w starszych wersjach Debiana, także / etc / environment)” jest niejasne i dotyczy kontekstów regionalnych.
Szybki grep poprzez /etc/pam.d
pokazy:
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
Te wiersze konfiguracji są addytywne, a ponieważ brakuje pierwszego envfile
, domyślnie jest to /etc/environment
.
Wszystko to oczywiście opiera się na wszelkich crond
plikach binarnych, których używasz ( powłoki logowania itp.), Skompilowanych z PAM.
Wreszcie oznacza to, że inne systemy korzystające z PAM (np. RedHat) zachowują się tak samo, jak widać na ich stronie podręcznika.