우노
[Linux] 환경변수설정 본문
시스템 전역 환경 변수 등록
-
해당 시스템에 존재하는 모든 사용자가 사용할 수 있는 환경 변수로 시스템 전원이 켜져 있고 모든 사용자가 로컬 또는 원격으로 로그인할 때마다 로드됨.
-
/etc/profile : 시스템 전역 쉘 변수
- user가 쉘에 로그인 하게 되면 가장 먼저 /etc/profile파일을 읽는다.
- /etc/profile 파일에는 USER, LOGNAME, HOSTNAME 등의 쉘 변수들이 선언되어 있다.
- /etc/profile 파일을 통해 이러한 시스템 전역 쉘 변수들을 초기화한다.
- 그 다음으로 전역 리드라인 초기화 파일인 /etc/inputrc 파일을 읽고, 기타 특수 프로그램들의 전역 환경 설정 파일을 포함하고 있는 /etc/profile.d 디렉터리를 읽는다.
-
/etc/bashrc : 쉘 함수, Alias 시스템 전역 변수 정의
- /etc/profile 에서는 쉘 환경과 프로그램 시작 설정을 지정할 수 있는 것처럼
- /etc/bashrc 파일에서는 각종 쉘 함수와 alias를 위한 전역 변수들을 정의한다.
사용자 환경 변수 등록
-
특정 사용자에 대해서만 정의된 환경 변수로 로컬 터미널 세션 또는 원격 로그인 세션을 사용하여 로그인할 때마다 로드됨.
-
~/.bash_profile : 유저 개인의 환경 설정
- 특정 사용자의 원격 로그인 파일로 이 파일에 있는 환경변수는 사용자가 원격 로그인 세션이 이루어질시에 호출됨.
- 이 파일은 시스템 전역 설정 파일인 /etc/profile 이 수행된 다음 바로 수행된다.
- 모든 사용자에게 영향을 주는 /etc/profile과는 달리 ~/.bash_profile는 오직 bash를 실행하는 그 사용자에게만 영향을 준다.
-
~/.bashrc : 유저 개인의 alias 및 변수 설정
- 이 파일은 시스템 전역 변수 설정 파일인 /etc/bashrc가 수행된 다음 바로 수행됨
- 모든 사용자에게 영향을 주는 /etc/bashrc와는 달리 ~/.bashrc는 오직 bash를 실행하는 그 사용자에게만 영향을 준다.
-
~/.bash_logout : 로그아웃 설정파일
- 각 유저의 자신에 대한 로그아웃 절차를 포함한다. 로그아웃시 실행할 절차를 선언할 수 있다.
- 예를들면 이 파일에 로그아웃시 터미널을 clear 하는 등의 선언을 할 수 있다.
사용 예
-
/etc/profile 파일을 편집기로 실행한다.
vi /etc/profile
-
export를 사용해 변수 추가
# export 변수명**=**위치 export DESKTOP**=**/mnt/c/Users/crpark/Desktop export C**=**/mnt/c
-
편집기를 빠져나와 source 명령어로 적용한다.
source /etc/profile
-
이렇게 설정된 환경 변수는 $ 를 붙여서 어디서든지 접근이 가능하다.
cd $DESKTOP
'Operating System > Linux & Ubuntu' 카테고리의 다른 글
[Linux] 재지향(Redirection)이란? (0) | 2020.09.15 |
---|---|
[Linux] cp (0) | 2020.07.22 |
[Linux] grep (0) | 2020.07.17 |
[Linux] 기본 디렉토리 구조 (0) | 2020.07.16 |
[Linux] source (0) | 2020.07.16 |
Comments