Ubuntu 시스템 환경 변수 상세 설명
Ubuntu 시스템 환경 변수 프로필 은 시스템 급 파일 과 사용자 급 파일 로 나 뉘 는데 환경 변수의 프로필 을 자세히 소개 합 니 다.
1. 시스템 급 파일:
/etc/profile: 로그 인 할 때 운영 체제 가 사용자 환경 을 맞 출 때 사용 하 는 첫 번 째 파일 입 니 다. 이 파일 은 시스템 의 모든 사용자 에 게 환경 정 보 를 설정 합 니 다. 사용자 가 처음 로그 인 할 때 이 파일 이 실 행 됩 니 다./etc/profile. d 디 렉 터 리 설정 파일 에서 셸 설정 을 수집 합 니 다.이 파일 은 일반적으로/etc/bash. bashrc 파일 을 호출 합 니 다.
/etc/bash. bashrc: 시스템 급 bashrc 파일 입 니 다. bash 셸 을 실행 하 는 모든 사용자 에 게 이 파일 을 실행 합 니 다. bash 셸 이 열 렸 을 때 이 파일 은 읽 힙 니 다.
/etc/environment: 로그 인 할 때 운영 체제 에서 사용 하 는 두 번 째 파일 입 니 다. 시스템 은 자신의 profile 을 읽 기 전에 환경 파일 의 환경 변 수 를 설정 합 니 다.
2. 사용자 급 파일:
~/. profile: 로그 인 할 때 사용 하 는 세 번 째 파일 은. profile 파일 입 니 다. 모든 사용자 가 이 파일 을 사용 하여 자신 이 사용 하 는 셸 정 보 를 입력 할 수 있 습 니 다. 사용자 가 로그 인 할 때 이 파일 은 한 번 만 실 행 됩 니 다!기본 적 인 상황 에서 그 는 환경 변 수 를 설정 하여 사용자 의 'bashrc 파일' 을 실행 합 니 다.
~/. bashrc: 이 파일 은 bash 셸 에 사용 할 bash 정 보 를 포함 하고 있 습 니 다. 로그 인 할 때 와 새 셸 을 열 때마다 이 파일 을 읽 습 니 다.셸 을 열 때마다 이 파일 을 한 번 읽 기 때문에 효율 적 으로 말 할 수 없습니다.
~/.bash_profile: 모든 사용 자 는 이 파일 을 사용 하여 자신 이 사용 하 는 셸 정 보 를 입력 할 수 있 습 니 다. 사용자 가 로그 인 할 때 이 파일 은 한 번 만 실 행 됩 니 다!기본적으로 그 는 환경 변 수 를 설정 하여 사용자 의. bashrc 파일 을 실행 합 니 다. ~/.bash_profflee 는 대화 식, login 방식 으로 bash 에 들 어가 실 행 됩 니 다 ~/. bashrc 는 대화 식 non - login 방식 으로 bash 에 들 어가 실 행 된 일반적인 두 가지 설정 이 대체적으로 같 기 때문에 전 자 는 후 자 를 호출 합 니 다.
~./bash_login: 이 걸 추천 하지 않 습 니 다. 그래 픽 인터페이스 에 영향 을 주지 않 습 니 다.그리고. bashprofile 우선 순위 bashlogin 이 높다.존재 할 때 셸 에 로그 인하 여 시작 할 때 읽 습 니 다.
~/.bash_logout: 시스템 을 종료 할 때마다 이 파일 을 실행 합 니 다.
~/.pam_environment: 사용자 급 환경 변수 설정 파일.
또한,/etc/profile 에서 설정 한 변수 (전역) 는 모든 사용자 에 게 작용 할 수 있 으 며, ~/bashrc 등에 서 설정 한 변수 (부분) 는/etc/profile 의 변수 만 계승 할 수 있 습 니 다. 그들 은 '부자' 관계 입 니 다.
2./etc/profile 과/etc/enviroment 의 비교
먼저 실험 을 해 보 겠 습 니 다.
먼저 export LANG = zhCN 은/etc/profile 에 가입 하여 시스템 을 종료 하고 다시 로그 인 합 니 다. 로그 인 알림 은 영 어 를 표시 합 니 다./etc/profile 의 export LANG = zhCN 삭제, LNAG = zhCN 은/etc/environment 에 가입 하여 시스템 을 종료 하고 다시 로그 인 합 니 다. 로그 인 알림 은 중국 어 를 표시 합 니 다.
사용자 환경 이 구축 되 는 과정 에서 항상/etc/profile 을 먼저 실행 한 다음/etc/environment 를 읽 습 니 다.왜 위 에서 말 한 것 과 다른 것 이 있 습 니까?
먼저/etc/environment 를 실행 한 다음/etc/profile 을 실행 해 야 합 니 다.
/etc/environment 는 전체 시스템 을 설정 하 는 환경 이 고/etc/profile 은 모든 사용 자 를 설정 하 는 환경 입 니 다. 전 자 는 로그 인 사용자 와 무관 하고 후 자 는 로그 인 사용자 와 관련 이 있 습 니 다.
시스템 응용 프로그램의 실행 은 사용자 환경 과 무관 할 수 있 지만 시스템 환경 과 관련 이 있 기 때문에 로그 인 할 때 보 이 는 알림 정보, 예 를 들 어 날짜, 시간 정보의 표시 형식 은 시스템 환경의 LANG 와 관련 되 고 LANG = en 이 부족 합 니 다.US, 시스템 환경 LANG = zhCN, 알림 메 시 지 는 중국어 입 니 다. 그렇지 않 으 면 영어 입 니 다.
사용자 의 SHELL 초기 화 에 있어 서 는/etc/profile 을 먼저 실행 하고 파일/etc/environment 를 읽 는 것 입 니 다.
전체 시스템 에 있어 서 는 먼저/etc/environment 를 실행 합 니 다.이렇게 이해 하 는 게 맞 나 요?
/etc/enviroment -->/etc/profile --> $HOME/. profile --> $HOME/. env (존재 한다 면)
/etc/profile 은 모든 사용자 의 환경 변수 입 니 다.
/etc/enviroment 는 시스템 환경 변수 입 니 다.
시스템 에 로그 인 할 때 셸 이 읽 는 순 서 는?
/etc/profile ->/etc/enviroment -->$HOME/.profile-->$HOME/.env
원인 은 사용자 환경 과 시스템 환경의 차이 일 것 이다.
같은 변수 가 사용자 환경 (/etc/profile) 과 시스템 환경 (/etc/environment) 에 서로 다른 값 이 있다 면 사용자 환경 을 기준 으로 해 야 합 니 다.
비고: 셸 에서 프로그램 을 실행 할 때 셸 은 환경 변 수 를 제공 합 니 다.export 는 환경 변 수 를 추가, 수정 또는 삭제 하여 후속 실행 프로그램 에서 사용 할 수 있 습 니 다.export 의 효력 은 이 로그 인 동작 에 만 적 용 됩 니 다.
Linux 에 로그 인 할 때 파일 을 실행 하 는 과정 은 다음 과 같 습 니 다.
Linux 에 처음 로그 인 했 을 때, 먼저/etc/profile 파일 을 시작 한 다음, 사용자 디 렉 터 리 아래 의 ~/. bash 를 시작 합 니 다.profile、 ~/.bash_login 또는/. profile 파일 중 하나 입 니 다. 실행 순 서 는:/. bash 입 니 다.profile、 ~/.bash_login、 ~/.profile.만약 ~/. bashprofile 파일 이 존재 하면 보통 ~/. bashrc 파일 을 실행 합 니 다.왜냐하면 ~/. bashprofile 파일 에는 일반적으로 아래 코드 가 있 습 니 다.
if[ -f ~/.bashrc ] ; then
../bashrc
fi
~/.bashrc中,一般还会有以下代码:
if[ -f /etc/bashrc ] ; then
./bashrc
fi
그래서/. bashrc 는/etc/bashrc 파일 을 호출 합 니 다.마지막 으로 셸 을 종료 할 때/. bash 를 실행 합 니 다.logout 파일.
실행 순서:/etc/profile -> (~/. bash profile | ~/. bash login | ~/. profile) -> ~/. bashrc ->/etc/bashrc -> ~/. bashlogout
3. 환경 변 수 를 설정 하 는 방법
상기 분석 을 통 해 알 수 있 듯 이:
/etc/profile 전역 적 으로 시스템 시작 설정 에 따라 [이 파일 을 설정 하 는 것 은 영원히 편안 한 방법 입 니 다]
/root/profile 과/home/myname/profile 은 현재 창 에 만 유효 합 니 다.
/root/. bashrc 와/home/yorname/. bashrc 는 시스템 시작 에 따라 사용자 의 환경 변 수 를 설정 합 니 다 [평소에 이 파일 을 설정 하면 됩 니 다]
그러면 Ubuntu 의 환경 변 수 를 설정 하려 면 이 몇 개의 프로필 에서 적당 한 파일 을 찾 아 조작 하 는 것 입 니 다.$PATH 에 경 로 를 추가 하려 면 다음 과 같은 몇 가지 추가 방법 을 사용 할 수 있 습 니 다.
1.控制台中:
$PATH="$PATH:/my_new_path" (关闭shell,会还原PATH)
2.修改profile文件:
$sudo gedit /etc/profile
在里面加入:
exportPATH="$PATH:/my_new_path"
3.修改.bashrc文件:
$ sudo gedit /root/.bashrc
在里面加入:
export PATH="$PATH:/my_new_path"
后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下:
$ echo $PATH
输出已经是新路径了。
举个列子,如果想把当前路径加入到环境变量中去,就可以这样做:
$ PATH ="$PATH:."
이렇게 자신 이 작성 한 셸 스 크 립 트 를 실행 할 때 입력 하지 않 아 도 됩 니 다./
소결
다시 말 하면 Ubuntu 시스템 에서/etc/profile 파일 은 전역 적 인 환경 변수 설정 파일 로 모든 셸 에 적 용 됩 니 다.리 눅 스 시스템 에 로그 인 할 때 먼저/etc/profile 파일 을 시작 한 다음 사용자 디 렉 터 리 에 있 는 ~/. bash 를 시작 합 니 다.profile、~/.bash_login 또는 ~/. profile 파일 중 하 나 는 위의 정렬 과 같 습 니 다.만약 ~/. bashprofile 파일 이 존재 하면 보통 ~/. bashrc 파일 을 실행 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.