이열매의 메모장
리눅스 환경변수 본문
1. set과 printenv 차이점
set은 로컬 환경 변수를 조회하고 printenv는 글로벌 환경 변수를 조회한다. 이 때, 전역 변수와 지역 변수의 차이는 다음과 같다.
- 전역 변수
- 어디서나 접근할 수 있는 변수
- 해당 쉘의 자식 프로세스에서도 환경변수 사용 가능
- export (환경변수명)=(설정값) 과 같이 선언
- 지역변수
- 선언된 영역 내에서만 접근 가능한 변수
- 해당 쉘의 자식 프로세스에서는 지역변수 사용 불가
- (지역변수명)=(설정값) 과 같이 선언
2. 시작 파일에 대한 정리
- /etc/profile
- profile은 로그인을 위한 환경설정을 저장한다. 이 때, etc폴더 내에 있는 profile 은 모든 계정에 공통적으로 적용된다.
- ~/.bash_profile
- 사용자 홈 디렉토리 내에 있는 profile 파일은 해당 사용자 계정에서 사용하는 환경설정을 저장한다. 리눅스에서 로그인 시, 모든 계정에 공통적으로 적용되는 /etc/profile 을 먼적 읽어들여서 적용 후, 홈 디렉토리 아래에 있는 profile을 적용하게 된다.
- ~/.bash_login
- bash_profile파일과 동일한 역할이다. 이 때, bash_profile이 없을 경우 bash_login을 실행한다.
- ~/.profile
- bash_profile 파일과 동일한 역할이다. 이 때, bash_profile 이 없을 경우 대체 파일로 이용되는데, 우선 순위는 bash_profile > bash_login > .profile 순이다.
- /etc/bash.bashrc
- etc디렉토리 내에 있는 bashrc는 모든 계정이 사용하는 설정이 들어가 있다. Bash run command라는 의미로, proile에서 사용하는 로그인 환경설정을 제외한 함수나 alias 설정이 저장된다.
- ~/.bashrc
- 해당 계정 홈 디렉토리 내의 .bashrc파일은 특정 계정에서만 사용하는 설정을 기록한다.
3. 환경변수 명령어
source 명령어
: 환경변수를 파일에 적용해도 시스템이 재부팅되거나 쉘이 재실행되지 않으면 파일에 적용시킨 환경변수를 사용할 수 없다. 이 때, source 명령어를 이용하면 재부팅이나 재실행없이 즉시 적용이 가능하다.
source [시작 파일 경로명]
export 명령어
: 보통 쉘 스크립트에서 환경 변수 선언 시 사용
'Linux' 카테고리의 다른 글
리다이렉션 (0) | 2019.10.08 |
---|---|
sudo 비밀번호 없이 사용 설정 (0) | 2019.10.08 |
리눅스란 (0) | 2019.10.08 |
맥북 CentOS 원격 접속 (0) | 2019.10.08 |
VM에서 CentOS 텍스트 모드 설치 (0) | 2019.10.08 |
Comments