[Linux] 환경 변수 로드 순서

Linux 환경 변수의 로드 순서에 대해 조사해 보았습니다.

리눅스에서 명령을 사용할 수있는 이유는 무엇입니까?
이는 다양한 디렉토리에 명령이 저장되기 때문입니다.

Linux 명령을 사용할 수 있는 이유



/bin 기본 명령
/sbin 관리자용 명령
/usr/bin 애플리케이션에서 사용하는 기본 명령
/usr/sbin 애플리케이션에서 사용하는 관리자 명령
/usr/local/bin 추가한 소프트웨어 및 패키지용 명령

확인해 보았습니다.
/bin


/usr/bin


/usr/local/bin


/sbin
/usr/sbin
루트 권한이 없으므로 확인할 수 없습니다.
죄송합니다. .
그러나 일단 명령이 디렉토리에 저장되는 것은
확인할 수 있었습니다.

그렇다면/bin/???? ,/usr/bin/??? ,/usr/local/bin/???
같은 경로를 지정할 필요가?
아니요.
평소 경로를 지정하지 않고 명령을 사용할 수있는 이유는
로그인시 명령에 대한 경로가 기록된 설정을 읽었기 때문입니다.

환경 변수 로드 순서



지금부터는이 설정 파일을 읽는 순서에 대해 살펴 보겠습니다.
1./etc/profile
2. ~/.bash_profile
위의 파일이 없으면
2-1. ~/.bash_login
2-2. ~/.profile
3. ~/.bashrc
4./etc/bashrc
5. bash 실행

설정 파일을 읽는 순서는 위와 같습니다.
위에서 설명하면
1./etc/profile
이 파일은 로그인시에 읽는 모든 유저 공통의 설정이 쓰고 있습니다.
  • ~/.bash_profile
    그런 다음 사용자의 [home] 디렉토리에있는 ".bash_profile"
    로드합니다.
    위의 파일이 없으면 아래 순서로 읽을 수 있습니다.
    2-1. ~/.bash_login
    2-2. ~/.profile
    로그인시 한 번만 읽습니다.
  • ~/.bashrc
    이 파일은 bash가 읽힐 때마다 업데이트됩니다.
    설정을 변경할 때는 [bash]와 명령을 치고 설정 파일에의 갱신이 반영됩니다.
  • /etc/bashrc
    이 파일은 시스템 전체의 기능과 별칭에 대한 설정을 기록합니다. 여기서 디폴트의 프롬프트를 결정하는 「PS1」의 설정등을 하고 있습니다.

  • 「PS1」은 무엇?
    프롬프트 설정은 쉘 변수(환경 변수)에 의해 정의됩니다. (위의 이야기와 함께)
    bash의 경우 PS1이라는 쉘 변수입니다. 왜 PS1인가는,
    매뉴얼에 따르면 "The primary prompt string"
    즉, 기본 프롬프트 문에서입니다.
    "The secondary prompt string"이라는 두 번째 프롬프트를 가리키는 PS2도 있습니다.
  • bash 실행

  • 참고 페이지

    좋은 웹페이지 즐겨찾기