오늘의 인기 글
최근 글
최근 댓글
Today
Total
05-13 02:39
관리 메뉴

우노

[Linux] 환경변수설정 본문

Operating System/Linux & Ubuntu

[Linux] 환경변수설정

운호(Noah) 2020. 7. 17. 16:16

시스템 전역 환경 변수 등록

  • 해당 시스템에 존재하는 모든 사용자가 사용할 수 있는 환경 변수로 시스템 전원이 켜져 있고 모든 사용자가 로컬 또는 원격으로 로그인할 때마다 로드됨.

  • /etc/profile : 시스템 전역 쉘 변수

    • user가 쉘에 로그인 하게 되면 가장 먼저 /etc/profile파일을 읽는다.
    • /etc/profile 파일에는 USER, LOGNAME, HOSTNAME 등의 쉘 변수들이 선언되어 있다.
    • /etc/profile 파일을 통해 이러한 시스템 전역 쉘 변수들을 초기화한다.
    • 그 다음으로 전역 리드라인 초기화 파일인 /etc/inputrc 파일을 읽고, 기타 특수 프로그램들의 전역 환경 설정 파일을 포함하고 있는 /etc/profile.d 디렉터리를 읽는다.
  • /etc/bashrc : 쉘 함수, Alias 시스템 전역 변수 정의

    • /etc/profile 에서는 쉘 환경프로그램 시작 설정을 지정할 수 있는 것처럼
    • /etc/bashrc 파일에서는 각종 쉘 함수alias를 위한 전역 변수들을 정의한다.

사용자 환경 변수 등록

  • 특정 사용자에 대해서만 정의된 환경 변수로 로컬 터미널 세션 또는 원격 로그인 세션을 사용하여 로그인할 때마다 로드됨.

  • ~/.bash_profile : 유저 개인의 환경 설정

    • 특정 사용자의 원격 로그인 파일로 이 파일에 있는 환경변수는 사용자원격 로그인 세션이 이루어질시에 호출됨.
    • 이 파일은 시스템 전역 설정 파일인 /etc/profile 이 수행된 다음 바로 수행된다.
    • 모든 사용자에게 영향을 주는 /etc/profile과는 달리 ~/.bash_profile는 오직 bash를 실행하는 그 사용자에게만 영향을 준다.
  • ~/.bashrc : 유저 개인의 alias 및 변수 설정

    • 이 파일은 시스템 전역 변수 설정 파일인 /etc/bashrc가 수행된 다음 바로 수행됨
    • 모든 사용자에게 영향을 주는 /etc/bashrc와는 달리 ~/.bashrc는 오직 bash를 실행하는 그 사용자에게만 영향을 준다.
  • ~/.bash_logout : 로그아웃 설정파일

    • 각 유저의 자신에 대한 로그아웃 절차를 포함한다. 로그아웃시 실행할 절차를 선언할 수 있다.
    • 예를들면 이 파일에 로그아웃시 터미널을 clear 하는 등의 선언을 할 수 있다.

사용 예

  • /etc/profile 파일을 편집기로 실행한다.

      vi /etc/profile
  • export를 사용해 변수 추가

      # export 변수명**=**위치
      export DESKTOP**=**/mnt/c/Users/crpark/Desktop
      export C**=**/mnt/c
  • 편집기를 빠져나와 source 명령어로 적용한다.

      source /etc/profile
  • 이렇게 설정된 환경 변수는 $ 를 붙여서 어디서든지 접근이 가능하다.

      cd $DESKTOP

'Operating System > Linux & Ubuntu' 카테고리의 다른 글

[Linux] 재지향(Redirection)이란?  (0) 2020.09.15
[Linux] cp  (0) 2020.07.22
[Linux] grep  (0) 2020.07.17
[Linux] 기본 디렉토리 구조  (0) 2020.07.16
[Linux] source  (0) 2020.07.16
Comments