Handbook:Parts/Working/EnvVar/ko

도입부
환경 변수는 하나 이상의 프로그램에서 사용하는 정보가 들어있는 이름을 붙인 객체입니다. 수많은 사람은(그리고 리눅스를 처음 접하는) 약간 이상하거나 관리하기가 힘들다는 점을 발견할 것입니다. 그러나, 이렇게 생각하는 것 자체가 실수입니다. 하나 이상의 프로그램의 환경 설정을 바꿀 때 환경 변수를 사용하면 쉽게 처리할 수 있습니다.

중요 예제
다음 표에서는 리눅스 시스템에서 사용하는 많은 변수들을 나열하였고 용도를 설명합니다. 예제 값은 표 다음에 보여드립니다.

아래에서는 이들 변수에 대한 정의의 예를 보실 수 있습니다:

env.d 디렉터리
젠투에선 변수의 정의를 한곳에 모으려 디렉터리를 도입했습니다. 이 디렉터리 안에서 여러분은 00basic, 05gcc 등과 같은 수많은 파일을 찾으실 수 있습니다. 각각의 파일에 들어있는 프로그램에서 필요로 하는 변수들은 프로그램 이름 안에 언급되어 있습니다.

예를 들어 gcc를 설치할 때, 다음 변수의 정의를 가진 05gcc라고 하는 파일을 ebuild가 만들어줍니다.

다른 배포판에서는 바뀐 내용을 알려주거나 각각의 환경 변수 정의를 추가할 때 등의 위치에 넣습니다. 그러나 젠투에서는 환경 변수를 포함할 수 있는 수많은 파일에 일일히 신경쓰지 않게 여러분과 포티지를 위해 환경변수를 좀 더 쉽게 관리할 수 있게 해줍니다.

예를 들어 gcc를 업데이트하면 사용자 확인 절차 요구 없이 파일을 업데이트합니다.

이는 포티지 뿐만 아니라 사용자 입장에서의 여러분께도 이득입니다. 때로는 시스템 전체와 관련된 일부 환경 변수를 설정하라고 요청을 받을 수도 있습니다. 아래 예를 통해 http_proxy 변수를 보도록 하겠습니다. 을 점점 크게 하는 대신에 파일을 만들고 이 정의 내용을 이 파일에 입력하시기만 하면 됩니다:

자체 관리 변수에 동일한 파일을 사용하면, 사용자가 스스로 정의한 변수를 빨리 찾아볼 수 있습니다.

env-update
에 있는 수많은 파일에는 PATH 변수를 정의합니다. 이것은 잘못된 것이 아닙니다. 를 실행하면 환경 변수를 업데이트 하기 전에 각 패키지를 위해 수많은 정의 내용을 덧붙여서 기존에 있는 값과 혼동되지 않게 제각각이 가진 환경 변수 값을 쉽게 붙일 수 있도록 합니다.

env-update 스크립트는 파일들에 있는 값을 철자 순으로 붙입니다. 파일 이름은 반드시 두자리 숫자로 시작해야 합니다.

변수의 결합이 항상 일어나는 일은 아니고 ADA_INCLUDE_PATH, ADA_OBJECTS_PATH, CLASSPATH, KDEDIRS, PATH, LDPATH, MANPATH, INFODIR, INFOPATH, ROOTPATH, CONFIG_PROTECT, CONFIG_PROTECT_MASK, PRELINK_PATH, PRELINK_PATH_MASK, PKG_CONFIG_PATH, PYTHONPATH 변수들에게만 해당합니다. (의 철자순 파일에 있는) 다른 변수들에게도 최근 정의한 값을 사용합니다.

COLON_SEPARATED 또는 SPACE_SEPARATED 값 (또한 파일에 있는 내용도)으로 변수 값을 추가하여 변수 결합 목록에 더 많은 값을 추가할 수 있습니다.

를 실행하면, 스크립트는 에 모든 환경 변수를 만들고 이곳에 값을 놓습니다 (이 값은 이 사용합니다). 또한 LDPATH 변수에서 정보를 꺼내와서 를 만드는데 사용합니다. 그 다음 를 실행하여 동적 링커에서 사용할  파일을 다시 만듭니다.

env-update의 실행 결과를 바로 알고 싶다면 다음 명령을 실행하고 환경을 업데이트 합니다. 자신들만의 젠투 환경을 가진 사용자들은 설치 과정에 있는 다음 명령을 기억할 것입니다.

사용자별 변수
여러분은 항상 환경 변수를 전체적으로 설정하길 바랄 것은 아닙니다. 이를테면 을 추가하고 (여러분이 있는) 현재 작업 디렉터리를 PATH변수에 추가하고 싶지만 시스템에 있는 모든 사용자들에게 같은 PATH값을 주고 싶지 않을 때가 있을 것입니다. 이 환경 변수를 지역적으로 설정하고 싶다면 나 을 사용해야 합니다.

로그아웃/로그인한 수 PATH변수는 업데이트됩니다.

세션별 변수
때로는 더 엄격한 정의가 필요합니다. 바이너리 자신의 경로를 사용하지 않고 임시로 만든 디렉터리에서 바이너리를 사용할 수 있게 하거나 필요에 따라 잠깐 를 편집할 수도 있습니다.

이 경우 현재 세션의 PATH 변수는  명령으로 설정하십시오. 사용자가 로그아웃하기 전까지는 PATH 변수는 임시 설정으로 사용합니다.