/etc/environment는 Debian Jessie의 모든 사용자에게 작동하지 않습니다.

/etc/environment는 Debian Jessie의 모든 사용자에게 작동하지 않습니다.

방금 데비안 8.6을 설치했습니다. 모든 사용자에 대해 http 프록시 환경 변수를 설정하고 싶기 때문에 /etc/environment다음 가이드에 따라 편집 했습니다.데비안 위키. 그러나 재부팅 후에는 루트 사용자의 환경 변수만 설정됩니다.

/etc/environment콘텐츠는 다음과 같습니다.

http_proxy=http://localhost:8123/
https_proxy=http://localhost:8123/
ftp_proxy=http://localhost:8123/
no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
HTTP_PROXY=http://localhost:8123/
HTTPS_PROXY=http://localhost:8123/
FTP_PROXY=http://localhost:8123/
NO_PROXY="localhost,127.0.0.1,localaddress,.localdomain.com"

다음을 통해 결과를 확인합니다.

echo $http_proxy

루트를 사용하여 루트로 로그인하면 sudo su올바른 결과( http://localhost:8123/)가 표시되지만 일반 사용자를 사용할 때는 변수가 설정되지 않습니다. 나는 또한 모든 환경 변수를 확인하기 위해 env.

고쳐 쓰다:

더 많은 테스트가 예정되어 있습니다.

SET_BY_ETC_ENVIRONMENT="hello"/etc/environment, export SET_BY_ETC_PROFILE="hello"/etc/profileexport SET_BY_HOME_PROFILE="hello"에 추가했습니다 /home/perqin/.profile.

결과는 다음과 같습니다.

user   | login via                    | SET_BY_ETC_ENVIRONMENT | SET_BY_ETC_PROFILE | SET_BY_HOME_PROFILE
-------|------------------------------|------------------------|--------------------|--------------------
perqin | GUI                          | no                     | no                 | no
root   | GUI                          | no                     | no                 | no
perqin | sudo su in terminal from GUI | yes                    | no                 | no
root   | su in terminal from GUI      | yes                    | no                 | no
perqin | ssh                          | yes                    | yes                | yes
root   | ssh                          | yes                    | yes                | no

따라서 profilessh에 로그인했을 때 실행하세요. 그리고 그 중 어느 것도 GUI에서 구현되지 않습니다! 저는 Debian 8.6과 LXDE 데스크탑 환경을 사용하고 있습니다.

12.14 업데이트

출력은 grep pam_env /etc/pam.conf /etc/pam.d/*다음과 같습니다.

/etc/pam.d/atd:auth required    pam_env.so
/etc/pam.d/cron:# Read environment variables from pam_env's default files, /etc/environment
/etc/pam.d/cron:# and /etc/security/pam_env.conf.
/etc/pam.d/cron:session       required   pam_env.so
/etc/pam.d/cron:session       required   pam_env.so envfile=/etc/default/locale
/etc/pam.d/lightdm:# Load environment from /etc/environment and ~/.pam_environment
/etc/pam.d/lightdm:auth      required pam_env.so envfile=/etc/default/locale
/etc/pam.d/lightdm-autologin:# Load environment from /etc/environment and ~/.pam_environment
/etc/pam.d/lightdm-autologin:auth      required pam_env.so envfile=/etc/default/locale
/etc/pam.d/lightdm-greeter:# Load environment from /etc/environment and ~/.pam_environment
/etc/pam.d/lightdm-greeter:auth      required pam_env.so envfile=/etc/default/locale
/etc/pam.d/login:# file /etc/security/pam_env.conf.
/etc/pam.d/login:session       required   pam_env.so readenv=1
/etc/pam.d/login:session       required   pam_env.so readenv=1 envfile=/etc/default/locale
/etc/pam.d/polkit-1:session       required   pam_env.so readenv=1 user_readenv=0
/etc/pam.d/polkit-1:session       required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
/etc/pam.d/sshd:# /etc/security/pam_env.conf.
/etc/pam.d/sshd:session    required     pam_env.so # [1]
/etc/pam.d/sshd:session    required     pam_env.so user_readenv=1 envfile=/etc/default/locale
/etc/pam.d/su:# file /etc/security/pam_env.conf.
/etc/pam.d/su:session       required   pam_env.so readenv=1
/etc/pam.d/su:session       required   pam_env.so readenv=1 envfile=/etc/default/locale

관련 정보