본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
bash 로그인 셸이 시작될 때 한 번 읽어 실행하는 사용자별 설정 파일
  • 위치 : ~/.bash_profile (사용자마다 홈 디렉터리에 있다)
  • 새 사용자를 만들면 /etc/skel/.bash_profile 이 홈 디렉터리로 복사된다 → 리눅스 사용자 관리
  • 모든 사용자에게 적용하는 전역 파일은 /etc/profile 과 /etc/profile.d/*.sh 다

로그인 셸(콘솔·SSH 로그인, su -)이 시작되면 bash 는 다음 순서로 읽는다.

  1. /etc/profile (그 안에서 /etc/profile.d/*.sh)
  2. 사용자 홈의 ~/.bash_profile, ~/.bash_login, ~/.profile 가운데 처음 찾은 하나만
  3. 대부분 ~/.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 사용자 파일 비교

편집 원본 편집
파일 읽는 때 주로 넣는 것
~/.bash_profile 로그인할 때 한 번(로그인 셸) PATH 같은 환경 변수, 로그인 때 실행할 프로그램
~/.bashrc 셸이 새로 뜰 때마다 별칭(alias), 셸 함수, 프롬프트
~/.bash_logout 로그아웃할 때 정리 작업
~/.bash_history 설정 파일이 아니다 입력한 명령 기록