OnWorks Linux 및 Windows 온라인 워크스테이션

심벌 마크

워크스테이션용 무료 온라인 호스팅

<이전 | 내용 | 다음>

8.3.2. 패키지 우선순위 관리‌


APT 구성에서 가장 중요한 측면 중 하나는 각 패키지 소스와 관련된 우선 순위 관리입니다. 예를 들어 Kali Rolling 시스템을 Debian Unstable 또는 Debian Experimental의 최신 패키지 1000~XNUMX개로 확장할 수 있습니다. 사용 가능한 각 패키지에 우선 순위를 할당할 수 있습니다(동일한 패키지는 버전이나 패키지를 제공하는 배포판에 따라 여러 우선 순위를 가질 수 있음). 이러한 우선 순위는 APT의 동작에 영향을 미칩니다. 각 패키지에 대해 항상 우선 순위가 가장 높은 버전을 선택합니다(이 버전이 설치된 버전보다 이전 버전이고 우선 순위가 XNUMX 미만인 경우 제외).

APT는 몇 가지 기본 우선 순위를 정의합니다. 설치된 각 패키지 버전의 우선순위는 100입니다. 설치되지 않은 버전의 우선순위는 기본적으로 500이지만 대상 릴리스의 일부인 경우 990으로 점프할 수 있습니다( -t 명령줄 옵션 또는 APT::기본 릴리스 구성 지시).

항목을 추가하여 우선순위를 수정할 수 있습니다. / etc / apt / preferences 영향을 받는 패키지의 이름, 해당 버전, 원본 및 새 우선 순위가 포함된 파일입니다.

APT는 우선 순위가 1000보다 높은 경우를 제외하고 이전 버전의 패키지(즉, 현재 설치된 패키지보다 버전 번호가 낮은 패키지)를 설치하지 않습니다. APT는 항상 이 다음의 가장 높은 우선 순위 패키지를 설치합니다. 강제. 두 패키지의 우선 순위가 같으면 APT는 최신 패키지(버전 번호가 가장 높음)를 설치합니다. 동일한 버전의 두 패키지가 우선 순위는 같지만 내용이 다른 경우 APT는 설치되지 않은 버전을 설치합니다(이 규칙은 일반적으로 요구되는 개정 번호 증가 없이 패키지 업데이트의 경우를 다루기 위해 만들어졌습니다. ).

보다 구체적으로 말하면 우선순위가 0 미만인 패키지는 설치되지 않습니다. 우선 순위가 0에서 100 사이인 패키지는 다른 버전의 패키지가 이미 설치되어 있지 않은 경우에만 설치됩니다. 우선 순위가 100에서 500 사이인 경우에만 패키지가 설치됩니다.

다른 배포판에서 설치되거나 사용 가능한 다른 최신 버전이 없습니다. 우선 순위가 501에서 990 사이인 패키지는 대상 배포판에 최신 버전이 설치되어 있지 않거나 사용 가능한 경우에만 설치됩니다. 우선 순위가 990에서 1000 사이인 경우 설치된 버전이 최신 버전인 경우를 제외하고 패키지가 설치됩니다. 우선 순위가 1000보다 크면 APT가 이전 버전으로 다운그레이드하도록 강제하더라도 항상 패키지 설치로 이어집니다.

APT가 확인하는 경우 / etc / apt / preferences, 먼저 가장 구체적인 항목(종종 관련 패키지를 지정하는 항목)을 고려한 다음 보다 일반적인 항목(예: 배포판의 모든 패키지 포함)을 고려합니다. 일반 항목이 여러 개 있는 경우 첫 번째 일치 항목이 사용됩니다. 사용 가능한 선택 기준에는 패키지 이름과 이를 제공하는 소스가 포함됩니다. 모든 패키지 소스는 패키지에 포함된 정보로 식별됩니다. 해제 APT가 함께 다운로드하는 파일 패키지 파일. 이러한 파일은 출처를 지정합니다. 일반적으로 Kali 공식 미러의 패키지는 "Kali"이고 Debian 공식 미러의 패키지는 "Debian"입니다. 그러나 출처는 타사 리포지토리의 경우 사람 또는 조직의 이름일 수도 있습니다. 그만큼 해제 파일은 또한 해당 버전과 함께 배포 이름을 제공합니다. 이 메커니즘에 대한 몇 가지 현실적인 사례 연구를 통해 구문을 살펴보겠습니다.



우선 순위 kali-bleeding-edge 또는 Debian 실험 목록을 sources.list에 파일 Kali-Bleeding-Edge 및 해당 패키지는 기본 APT 때문에 거의 설치되지 않습니다. 데비안 실험 우선 순위는 1입니다. 이것은 물론 사용자가 실수로 최첨단 패키지를 설치하지 않도록 설계된 특정한 경우입니다. 패키지는 다음을 입력해야만 설치할 수 있습니다. 적절한

설치 꾸러미/kali-bleeding-edge, 물론 가장자리에 있는 삶의 위험과 잠재적 골칫거리를 알고 있다고 가정합니다. 여전히 가능합니다(비록 지원 권장) kali-bleeding-edge/experimental의 패키지를 다른 배포판의 패키지와 마찬가지로 우선순위 500으로 처리합니다.

/ etc / apt / preferences:

패키지 : *

핀: 릴리스 a=kali-bleeding-edge 핀 우선순위: 500


Kali의 패키지만 사용하고 명시적으로 요청할 때만 Debian 패키지를 설치하기를 원한다고 가정해 봅시다. 에 다음 항목을 작성할 수 있습니다. /etc/apt/ 환경 설정 파일(또는 /etc/apt/preferences.d/):


패키지 : *

핀: 해제 o=칼리 핀-우선순위: 900


패키지 : *

핀: 릴리스 o=데비안 핀 우선순위: -10

패키지 : *

핀: 해제 o=칼리 핀-우선순위: 900


패키지 : *

핀: 릴리스 o=데비안 핀 우선순위: -10

지난 두 가지 예에서 본 a=칼리-블리딩 에지, 선택한 분포의 이름을 정의하고 o=칼리 o=데비안, 원본이 각각 Kali 및 Debian인 패키지로 범위를 제한합니다.

이제 Perl 버전 5.22에 따라 여러 로컬 프로그램이 있는 서버가 있고 업그레이드로 다른 버전이 설치되지 않도록 하고 싶다고 가정해 보겠습니다. 이 항목을 사용할 수 있습니다.


꾸러미: 펄

핀: 버전 5.22* 핀 우선순위: 1001

꾸러미: 펄

핀: 버전 5.22* 핀 우선순위: 1001


이 구성 파일에 대한 참조 문서는 매뉴얼 페이지에서 사용할 수 있습니다. apt_preferences(5)로 표시할 수 있습니다. 남자 apt_preferences.


댓글 추가 주석에 대한 공식적인 구문은 없습니다. / etc / apt / preferences, 그러나 일부 텍스트

/ etc / apt / preferences 하나 이상의 앞에 추가하여 설명을 제공할 수 있습니다. 설명 필드를 각 항목으로:

설명: xserver-xorg-video-intel 패키지가 제공되었습니다. 설명: 실험에서 안전하게 사용할 수 있습니다.

패키지: xserver-xorg-video-intel Pin: release a=experimental

핀 우선 순위 : 500


OnWorks의 최고 OS 클라우드 컴퓨팅: