사용자가 로그인할때 마다 자동으로 실행되는 명령을 저장해 놓은 것.
환경 설정파일에는 시스템 환경 설정파일과 사용자 환경 설정파일이 있다.
셸마다 다른 이름의 파일을 사용하기 때문에 사용자는 여러 셸을 사용하면서 각 셸마다 다른 환경을 꾸밀수도 있다.
* 시스템 환경 설정 파일
- 시스템을 사용하는 전체 사용자의 공통 환경을 설정하는 파일로 모든 사용자가 로그인할 때마다 무조건 실행됨.
배시셸의 시스템 환경 설정 파일은 /etc 디렉토리에 있다.
- 배시셸의 시스템 환경 설정 파일은 아래와 같이 3가지로 분류 된다.
1. /etc/profile :
o 시스템 공통으로 적용되는 환경 변수를 설정
- PATH : 기본 명령 경로를 설정.
- USER, LOGNAME : 사용자 UID와 이름을 설정
- HOSTNAME : 호스트명을 설정
- HISTSIZE : 히스토리 크기를 설정
o 기본 접근 권한을 설정
o /etc/profile.d/*.sh를 실행한다.
2. /etc/bashrc :
o 시스템 공통으로 적용되는 함수와 앨리어스를 설정
o 기본 프롬프트를 설정
o 서브 셸을 위한 명령 경로를 설정.
o 서브 셸을 위한 기본 접근 권한을 설정.
3. /etc/profile.d/*.sh :
o 언어나 명령별로 각각 필요한 환경을 설정
o 필요시 설정 파일을 추가
* 사용자 환경 설정 파일
- 각 사용자의 홈 디렉토리에 숨김 파일로 있으며, 사용자가 내용을 수정하고 관리할 수 있다.
사용자가 로그인하면 제일 먼저 시스템 환경 설정 파일이 실행되어 시스템 공통 환경을 만들고, 이후 사용자 환경 설정 파일을 순서대로 실행하여 사용자별 환경을 설정.
- 배시셸의 사용자 환경 설정 파일
1. ~/.bash_profile :
o .bashrc 파일이 있으면 실행한다.
o 경로 추가 등 사용자가 정의하는 환경 설정 파일이다.
2. ~/.bashrc :
o /etc/bashrc 파일이 있으면 실행한다.
o 사용자가 정의하는 앨리어스나 함수 등을 설정한다.
3. ~/.bash_logout :
o 로그아웃 시 실행할 필요가 있는 함수 등을 설정한다.
ex) cat .bash_profile --> .bash_profile 출력.
cat .bashrc --> .bashrc 출력
cat .bash_logout --> bash_logout 출력
사용자 환경 설정 파일 만들기
vi .bashrc --> .bashrc 파일에 들어가서 필요한 앨리어스나 함수 등을 설정.
- 사용자 환경 설정 파일 적용하기
파일을 수정 후 이를 적용하려면 로그아웃 했다가 다시 로그인하거나 .(마침표) 명령이나 source 명령을 사용하여
환경설정 파일을 실행해야 한다.
ex) [user1@localhost ~]$ . .bashrc --> .(마침표)를 사용
[user1@localhost ~]$ source .bashrc --> source를 사용
* 다른 셸의 환경 설정 파일
배시셸 외에 본셸, 콘셸, c셸 등도 각각 환경 설정파일을 제공한다.
아래 표를 참조
셸 | 시스템 초기화 파일 |
사용자 초기화 파일 |
실행 조건 | 실행 시기 | ||
로그인 | 서브 셸 | 로그아웃 | ||||
본셸 | /etc/profile | $HOME/.profile | - | O | ||
콘셸 | /etc/profile | $HOME/.profile | - | O | ||
$HOME/.kshrc | ENV 변수 설정 | O | O | |||
C셸 | /etc/profile | $HOME/.login | - | O | ||
$HOME/.cshrc | - | O | O | |||
$HOME/.logout | - | O |