로그인 쉘과 비로그인 쉘 그리고 그와 연관된 profile 과 bashrc 에 대한 내용 정리입니다.
Shell 목록 보기
사용가능한 shell 목록 보기
cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
현재 사용중인 shell의 확인
echo $SHELL
/bin/bash
Login shell vs Non-login shell
로그인 shell은 사용자가 로그인 했을때 적용되는 shell을 의미한다(default bash).
로그인하여 bash가 처음 시작할때(login shell일때), 다음 스크립트 파일들을 수행하여 환경을 설정한다.
- /etc/profile
- ~/.bash_profile or ~/.bash_login or ~/.profile
- ~/.bashrc
- /etc/bashrc
/etc/profile 과 .profile은 shell이 bash가 아니라도 로그인하면 로드되어 적용되고 .bashrc 와 .bash_login, .bash_profile은 bash shell로 로그인 되었을 경우만 적용이 된다.
로그인 shell이 로그아웃할때 다음 파일을 찾아서 수행한다.
~/.bash_logout
비로그인 shell은 로그인 없이 실행되는 shell을 말한다. GUI 환경에서 새 터미널을 여는 경우가 이에 해당하며 sudo bash 나 su 같은 것도 이에 해당한다.
- /etc/profile 과 /etc/bashrc 은 전체 사용자에게 적용된다.
- ~/.bashrc 와 ~/.profile, ~/.bash_profile 등은 해당 사용자에게만 적용된다.
사용자가 로그인을 하면 /etc/profile 과 /home/사용자/.profile 의 스크립트가 작동하여 적용된다. 이는 도스에서 autoexec.bat 파일과 같은 맥락이다.
'리눅스 > Linux 일반' 카테고리의 다른 글
리눅스 웹서버 구축전 고민사항 (7) | 2013.05.22 |
---|---|
리눅스 PAM를 이용한 로그인 관리 (0) | 2013.05.17 |
리눅스 strings - 실행파일, 바이너리파일에서 문자열 검색하기 (0) | 2013.05.16 |
리눅스 script - 시스템관리 작업내용을 모두 텍스트파일로 저장하기 (0) | 2013.05.16 |
리눅스 Alias - 별칭 사용하기 (2) | 2013.05.16 |