리눅스 bash profile
IT위키
더 많은 작업
- bash 로그인 셸이 시작될 때 한 번 읽어 실행하는 사용자별 설정 파일
- 위치 : ~/.bash_profile (사용자마다 홈 디렉터리에 있다)
- 새 사용자를 만들면 /etc/skel/.bash_profile 이 홈 디렉터리로 복사된다 → 리눅스 사용자 관리
- 모든 사용자에게 적용하는 전역 파일은 /etc/profile 과 /etc/profile.d/*.sh 다
- PATH 같은 환경 변수와 그
export→ 리눅스 환경 변수, 리눅스 export - 로그인할 때 한 번 실행할 프로그램
- ~/.bashrc 불러오기
로그인 셸(콘솔·SSH 로그인, su -)이 시작되면 bash 는 다음 순서로 읽는다.
- /etc/profile (그 안에서 /etc/profile.d/*.sh)
- 사용자 홈의 ~/.bash_profile, ~/.bash_login, ~/.profile 가운데 처음 찾은 하나만
- 대부분 ~/.bash_profile 안에서 ~/.bashrc 를, 다시 그 안에서 /etc/bashrc 를 불러온다
# ~/.bash_profile 의 기본 내용
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
PATH=$PATH:$HOME/bin
export PATH
- 로그인하지 않고 새로 뜨는 셸(터미널 창, 셸 안에서 실행한 bash)은 ~/.bash_profile 을 읽지 않는다. 그래서 별칭·함수는 ~/.bashrc, 환경 변수는 ~/.bash_profile 에 두는 것이 관례다
- 고친 내용을 다시 로그인하지 않고 적용하려면
source ~/.bash_profile을 실행한다
| 파일 | 읽는 때 | 주로 넣는 것 |
|---|---|---|
| ~/.bash_profile | 로그인할 때 한 번(로그인 셸) | PATH 같은 환경 변수, 로그인 때 실행할 프로그램 |
| ~/.bashrc | 셸이 새로 뜰 때마다 | 별칭(alias), 셸 함수, 프롬프트 |
| ~/.bash_logout | 로그아웃할 때 | 정리 작업 |
| ~/.bash_history | 설정 파일이 아니다 | 입력한 명령 기록 |