Centos/RHEL: 특정 종속성을 설치하기 위한 최소 패키지 세트를 결정합니까?

Centos/RHEL: 특정 종속성을 설치하기 위한 최소 패키지 세트를 결정합니까?

설치할 패키지 목록이 있다고 가정해 보겠습니다.

# yum install foo bar baz quux

그러나 baz이것이 의 종속성 foo이고 quux의 종속성이라고 가정합니다 baz.

그래서, 정말로, 내가 가진 전부는실제로실행해야 할 사항은 다음과 같습니다.

# yum install foo bar

패키지 목록이 주어지면 최소 세트를 결정하는 방법이 있습니까?

답변1

상호의존성이 부족하다는 점을 고려하면(보장됨) 다음 알고리즘은 최소 세트를 생성합니다.

  • 목록의 각 패키지에 대해 모든 요구 사항을 나열합니다( rpm -qR foo).
  • 요구 사항의 각 패키지에 대해 존재하는 경우 목록에서 제거합니다.

목록 (아마도 다른 것) foo에 대한 필수 반품률 baz및 목록 baz에 대한 필수 반품률 quux이므로 둘 다 제거할 수 있습니다. 삭제하기 전에 모든 요구 사항을 나열해야 합니다. 그렇지 않으면 전이적 요구 사항이 유지될 위험이 있습니다( quux이 경우 baz처리 후 즉시 삭제하는 경우).foo

하지만패키지 매니페스트에는 다음 사항이 반영되어야 합니다.당신의최소한의 종속성 세트를 설치하는 대신 종속성을 제거합니다. 필요한 경우 quux명령에 이를 나열해야 합니다 yum install. 그렇지 않으면 baz어느 시점에서 이에 의존하지 않으면 설치가 더 이상 요구 사항을 충족하지 않게 됩니다.

관련 정보