포티지 (소프트웨어)

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색
동작중인 포티지

포티지(Portage)는 젠투 리눅스에서 사용하는 패키지 관리 시스템이다. 다른 운영 체제까지 관리할 수 있는 포티지의 유연성 덕분에 젠투는 “메타 배포판”이라고 불리기도 한다. 게다가 젠투 리눅스에는 FreeBSD, 맥 OS X, 솔라리스에서 쓸 수 있는 포티지 구현까지 되어 있다.

포티지는 이빌드(ebuild; 현재 젠투 리눅스에는 10,000개 이상의 이빌드가 있다)의 계층적 트리, 이머지(emerge)같은 관리 유틸리티, 젠툴킷(gentoolkit) 패키지 안에 있는 여러 관련 도구들로 구성된다. 이빌드는 각각의 패키지뿐만 아니라 소프트웨어 패키지를 어떻게 컴파일하고, 설치하고 설정하는지에 대한 메타데이터도 포함한다. 프로파일(profile)과 이머지를 사용한다고 해도, 사용자와 개발자는 포티지를 이용하여 시스템에 운영 체제를 구성하는 패키지나 응용 프로그램 패키지를 설치하고 관리할 수 있다.

포티지는 FreeBSD/NetBSD/OpenBSD 체제의 BSD 포츠(ports) 시스템에서 이름과 설계를 끌어온 것이다. 전통적으로 포츠는 복잡한 메이크파일 트리로 구현되었다. 소스에서 패키지를 컴파일하고 사용자가 안전하게 시스템에서 소프트웨어 설치 및 제거를 하고, 자동으로 의존성을 처리하였다. 포티지의 배후의 의도는 파이썬의 강점을 이용하여 사용하기 편리하고 관리하기 쉬우면서도 더 강력한 차세대 포츠 시스템을 만드는 것이었다.

포티지로 관리하는 시스템은 “순식간에” 컴파일할 수 있는 상태가 된다. 젠투 리눅스를 스크래치에서 설치하면 잘 동작하는 컴파일러와 포티지가 소스 코드를 인터넷에서 내려받아서 나머지 시스템 코어와 다른, 설치하고자 하는 응용프로그램을 생성할 수 있는 빌드 환경이 설치된다. 그러나 포티지는 완전히 동작하는 시스템을 빨리 설치하고자 하는 사람들을 위하여 이미 생성된 패키지도 사용할 수 있게 해 놓았다. 대부분의 사용자는 이것을 타협으로 보고 있고 느린 컴퓨터에서 설치하는 경우에만 사용하거나 소스 코드가 없는 한정된 소프트웨어에서 사용한다. 그러나 개발자들이 빨리 특정 패키지를 복구할 필요가 있거나 사용자들이 패키지를 아주 오래된 컴퓨터에서 사용하고자 할 때 빠른 컴퓨터에서 컴파일한 것을 가져다 쓸 수 있게 한다. 큰 환경에서 빌드 조각들을 이용하여 미리 생성된 패키지를 만들고 여러 클라이언트에 배포하는 것은 전체 네트워크를 관리할 때 자주 쓰는 테크닉이다.

포티지가 제공하는 몇 가지 고급 특징은 여러 버전을 설치할 수 있는 것, 트리에서 같은 패키지를 수정 설치 가능하다는 것, 조건적 의존성 결정과 특징 지원, 설정 파일 보호와 프로파일이 있다.

바깥고리[편집]