Trans:GentooX86Handbook3-1
목차
파일과 디렉터리
포티지 파일
설정 지시문
포티지 기본 설정은 /etc/make.globals에 저장합니다. 이 내용을 보시면 변수를 통해 포티지 설정을 조절한다는 것을 알아채실 것입니다. 어떤 변수들을 포티지에서 살펴보는지 이들이 나중에 어떤 의미를 지니고 있는지를 말이죠.
수많은 설정 지시문이 아키텍처에 따라 다르듯이, 포티지에서는 여러분의 프로파일의 일부로서 기본 설정 파일을 지니고 있습니다. 여러분의 프로파일은 /etc/portage/make.profile 심볼릭 링크를 가리키며, 포티지 설정내용은 여러분의 프로파일의 make.defaults와 모든 상위 프로파일에 있습니다.
설정 변수를 바꾸려 하신다면 /etc/make.globals 또는 make.defaults를 바꾸지 마십시오. 앞의 두 파일에 우선하는 /etc/portage/make.conf를 대신 사용하십시오. /usr/share/portage/config/make.conf.example에서도 내용을 찾아보실 수 있습니다. 이름을 통해 의미를 함축한 바와 같이, 이런 경우는 거의 예제 파일일 뿐입니다. 포티지에서는 이 파일을 읽어들이지 않습니다.
포티지 설정 변수를 환경 변수처럼 설정할 수 있지만, 추천하지 않습니다.
프로파일 관련 정보
이미 앞에서 /etc/portage/make.profile 디렉터리를 언급했습니다. 음, 정확히는 디렉터리는 아니고, 여러분이 다른 어딘가에 여러분 자신의 프로파일을 만든다 할지라도 기본적으로 /usr/portage/profiles에 있는 프로파일의 심볼릭 링크이며, 기본 프로파일을 가리킵니다. 이 프로파일 심볼릭 링크는 여러분의 시스템이 속한 프로파일을 가리킵니다.
프로파일에는 해당 프로파일에 속한 시스템의 패키지 목록, 프로파일 상에서 동작하지 않는 (또는 가려놓은) 패키지 등과 같이, 아키텍처와 관련된 포티지 정보를 포함합니다.
사용자 관련 설정
소프트웨어 설치와 관련한 포티지 동작의 우선 설정이 필요할 때, /etc/portage에 있는 파일을 편집해서 끝낼 수 있습니다. /etc/portage 에 있는 파일 사용을 강력히 권장 하며, 환경 변수로의 우선 설정을 웬만하면 하지 마십시오!!
/etc/portage에서 다음과 같은 파일을 만들 수 있습니다.
- package.mask : 포티지로 설치하지 않으려는 패키지 목록 파일
- package.unmask : 젠투 개발자들이 이머징하는 것을 강력히 만류하지만 그래도 설치할 수 있게 하는 패키지 목록 파일
- package.accept_keywords : 시스템 또는 아키텍처에서 (아직) 패키지를 설치하는데 적당함을 발견하지 못했지만, 그래도 설치할 수 있도록 한 패키지 목록
- package.use : 전체 시스템에서 USE 플래그를 사용하도록 제각각의 패키지에 사용하려는 USE 플래그 목록
이들 요소가 꼭 파일일 필요는 없습니다. 패키지 각각에 포함한 단 하나의 파일이어도 됩니다. /etc/portage 디렉터리와 이곳에 만들 수 있는 모든 파일 목록의 더 많은 내용은 포티지 맨페이지에서 찾아보실 수 있습니다.
코드 예제 1.1: 포티지 맨 페이지 읽기 |
$ man portage |
포티지 파일, 디렉터리 위치 바꾸기
이전에 언급한 설정 파일은 다른 어떤 곳에는 저장할 수 없습니다. 포티지는 이들 설정 파일을 정확한 해당 위치에서 찾을 것입니다. 그러나, 포티지는 디렉터리를 빌드하고, 소스코드를 저장하며, 포티지 트리를 위치할 등의 다양한 목적으로 다른 수많은 위치들도 사용합니다.
이 목적들은 이미 잘 알려진 기본 위치를 가지지만 여러분의 구미에 따라 /etc/portage/make.conf를 통해 다른 위치로 바꿀 수 있습니다. 이 장의 나머지 부분은 포티지가 사용하는 특수한 목적의 위치들에 대해 설명하고 파일 시스템 상에서 이들을 어떻게 대체하는지에 대해서도 설명할 것입니다.
이 문서를 참고서로 쓰라는 의미는 아니지만, 완전한 배경지식이 필요하다면 포티지와 make.conf의 맨 페이지를 참조하십시오.
코드 예제 1.2: 포티지와 make.conf의 맨페이지 보기 |
$ man portage $ man make.conf |
저장하는 파일
포티지 트리
포티지 트리의 기본 위치는 /usr/portage 입니다. PORTDIR 변수에 지정되어 있습니다. (변수 값을 바꿔서) 다른 곳에 포티지 트리를 저장하려면, 바뀐 위치에 따라 /etc/portage/make.profile 심볼릭 링크를 바꿔주는걸 잊지 마십시오. PORTDIR 변수를 바꿨다면, PORTDIR을 바꾼 것을 알아채지 않는 PKGDIR, DISTDIR, RPMDIR 변수들 역시 바꿔야 합니다. 포티지가 다루는 변수들이기 때문입니다.
미리 빌드한 바이너리
기본적으로 포티지에서 미리 빌드한 바이너리를 사용하지 않지만, 이를 위해 더 광범위한 지원을 제공합니다. 포티지에 미리 빌드한 패키지로 작업하라고 요청하면, /usr/portage/packages에서 패키지를 찾을 것입니다. 이 위치는 PKGDIR 변수에 정의되어 있습니다.
소스 코드
프로그램 소스코드는 기본적으로 /usr/portage/distfiles에 저장됩니다. 이 위치는 DISTDIR 변수에 정의되어 있습니다.
포티지 데이터베이스
포티지는 (어떤 패키지를 설치했는지, 패키지에 어떤 파일이 속해있는지 등) 시스템의 상태를 /var/db/pkg에 저장합니다. 이 파일을 직접 수정하지 마십시오! 여러분의 시스템에 대한 포티지의 내부 정보를 깰 것입니다.
포티지 캐시
포티지 캐시(수정 일시, 가상 패키지, 의존성 트리 정보 등)는 /var/cache/edb에 저장합니다. 이 위치는 말 그대로 캐시 입니다. 포티지 관련 프로그램이 돌아가고 있는 상태가 아니라면 이 디렉터리를 비울 수 있습니다.
프로그램 빌드
임시 포티지 파일
포티지 임시 파일은 기본적으로 /var/tmp에 저장합니다. 이는 PORTAGE_TMPDIR 변수에 정의되어 있습니다.
PORTAGE_TMPDIR 변수를 바꿨다면 다른 변수들이 PORTAGE_TMPDIR 변수의 변경을 알아채지 못하는 것과 같이 BUILD_PREFIX 변수 값도 바꿔주어야 합니다. 포티지가 이 변수를 다루기 때문입니다.