컴퓨터 세상/LiNuX

환경 설정 파일

Jimin Daddy 2022. 3. 23. 12:07

사용자가 로그인할때 마다 자동으로 실행되는 명령을 저장해 놓은 것.
환경 설정파일에는 시스템 환경 설정파일과 사용자 환경 설정파일이 있다.
셸마다 다른 이름의 파일을 사용하기 때문에 사용자는 여러 셸을 사용하면서 각 셸마다 다른 환경을 꾸밀수도 있다.
* 시스템 환경 설정 파일
  - 시스템을 사용하는 전체 사용자의 공통 환경을 설정하는 파일로 모든 사용자가 로그인할 때마다 무조건 실행됨.
    배시셸의 시스템 환경 설정 파일은 /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

 

'컴퓨터 세상 > LiNuX' 카테고리의 다른 글

파일 접근 권한  (0) 2022.03.24
파일 속성  (0) 2022.03.23
프롬프트 설정  (0) 2022.02.25
히스토리  (0) 2022.02.16
앨리어스 (alias)  (0) 2022.02.16