repo에 최신 버전이있는 경우 특정 버전을 설치 하시겠습니까?


13

다음 패키지에 의존하는 메타 패키지를 만들어 보자

Depends: A (=2),
 B (=2),
 C (=2)

'='에 주목하십시오-가장 최신 버전이 아닌 특정 버전을 설치하고 싶습니다.

또한 :

B 는 A에 의존합니다 (> = 1)

C 는 B (> = 1) 및 A (> = 1)에 따라 다름

리포지토리에서 A, B, C의 최신 버전이 2 인 경우 작동합니다.

repo sudo apt-get install에 버전 3 A와 버전 3 B를 넣었으므로 my-meta-package는 다음 정보로 끝나기를 거부합니다.

The following packages have unmet dependencies:
  my-meta-package: Depends: B (= 2) but 3 is to be installed
                   Depends: A (= 2) but 3 is to be installed

A 및 B 버전 2를 수동으로 설치하면 메타 패키지가 올바르게 설치되므로 A3 또는 B3에 숨겨진 종속성이 없음을 강력하게 제안합니다. 메타 패키지는 많은 컴퓨터에 자동으로 설치되므로이 문제에 대한 해결책은 아닙니다.

질문 : sudo apt-get install my-meta-package 설치 버전 2,2,2를 만들려면 어떻게해야합니까?

또한 실제로 A 버전 3과 B 버전 3이 필요한 확장 정보를 얻을 수있는 방법이 있습니까?


아, 나는 대답하기 전에 전체 질문을 읽지 않았습니다. 메타 패키지를 재 포장 할 수 있습니까?
— int_ua 2016 년

2
@int_ua 메타 패키지를 리 패키징하는 것이 무엇인지 이해할 수 없습니다.
— tymtam

@belacqua-나는 당신과 함께 있지만, 우리는 복귀 및 의존성 등이있을 때 일어나는 일을 다루는 확실한 대답이 필요합니다.
— RobotHumans

메타 패키지의 제어 파일에 다음과 같은 종속 패키지의 명시 적 버전이 포함되어 있지 (a=2), (b=2)않습니까?
— Anwar

답변:


11

설치할 특정 버전을 선택하고 메타 패키지를 설치할 때 동시에 설치해야합니다.

sudo apt-get install meta-package package1=2 package2=2 package3=2

int_ua의 답변 에서 알 수 있듯이 다음 과 같이 역 종속성을 찾을 수 있습니다.

apt-cache rdepends package

해당 패키지에 대한 자세한 정보 ( 사용 가능한 버전, 종속성 등) 를 알고 싶으면 다음을 사용하십시오.

apt-cache show package

설치를 완료하고 시스템 업그레이드를 수행하는 동안 해당 버전을 유지하려면 belacqua에서 제안한대로 적절한 고정 을 사용해야 합니다.

APT 피닝

APT 고정 기능을 통해 관리자는 APT가 다른 리포지토리의 다른 버전으로 제공되는 특정 버전의 패키지를 선택하도록 할 수 있습니다. 이를 통해 관리자는 패키지가 시스템의 다른 패키지와 충돌 할 수 있거나 적절하지 않은 변경에 대해 충분히 테스트되지 않은 버전으로 업그레이드되지 않도록 할 수 있습니다. 이렇게하려면 APT 환경 설정 파일 (/ etc / apt / preferences)의 핀을 수정해야합니다.


이것이 정답이라고 믿습니다. = 다음에 패키지 이름을 버전과 함께
— 넣으십시오

1
나는 Tymek의 동료이며 실제로 문제를 해결합니다. 메타 패키지를 리버스 엔지니어링하여 메타 패키지를 발생시켜야합니다. 창의적인 파이썬이 순서대로 있습니다. 답변 주셔서 감사합니다.
— Igor Zevaka

1
시간이 지남에 따라 더 나은 해결책이 있는지 궁금합니다.
— ygrek

1

먼저 의존성을 설치해 볼 수 있습니다

sudo apt-get install package=2 여기서 2는 버전입니다

패키지에 따라 어떤 패키지가 의존하는지 확인할 수 있습니다.

apt-cache rdepends package


1
rdepends는 버전에 대한 세부 정보를 제공하지 않습니다.
— tymtam

2
종속성을 먼저 설치하면 메타 패키지가 없어집니다. 그것은 해결책이지만 내가 찾고있는 것은 아닙니다.
— tymtam

1
이 작업을 수행하려면 리포지토리에 지정한 버전의 사용 가능한 버전이 있어야합니다. 그렇지 않은 경우 오류가 발생하지 않습니다.
— 토마스 워드
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.