여러 패키지를 다운 그레이드


11

PPA 또는 외부 소스에서 패키지를 설치했을 수 있습니다 (예 : Ubuntu 저장소를 통해 제공되는 패키지의 .deb 다운로드).
그런 다음 공식 저장소에 유리하게 업그레이드 된 버전을 삭제하기로 결정합니다.
첫 번째 단계는 sources.list의 항목을 제거하는 것입니다.

사용 가능한 최고 버전으로 모두 다운 그레이드하는 방법이 있습니까? 특정 버전을 설치할 수 있다는 것을 알고 있습니다.

apt-get install [패키지] = [버전]
하지만 모두 다운 그레이드 할 수 있습니까?


현재 PPA 응용 프로그램을 제거한 다음 공식 저장소에서 설치하는 명령 하나를 의미합니까? 나는 같은 것을 할 것입니다 sudo apt-get -y remove package1 package2 package3 && sudo apt-get install package1 package2 package3- sudo apt-get repoclean예를 들어 하나의 명령이 있다고 믿지 않습니다 .
kingmilo

리포지토리에서 설치 한 모든 패키지를 가져와야합니까? 사용 가능한 최고 버전으로 업그레이드 할 수 없습니다 (openSUSEs zypper로 수행 할 수있는 작업 임).
Manuel

저장소를 제거하고 패키지가 공식 저장소에서 사용 가능하고 해당 패키지가 추가 한 저장소에서 사용 가능한 패키지보다 높은 버전 인 경우 해당 패키지는 공식 저장소에서 사용 가능한 버전으로 업그레이드됩니다.
kingmilo

1
예,하지만 그렇지 않은 경우 업그레이드는 전혀 문제가 아니라 다운 그레이드입니다.
Manuel

답변:


16

파티에 조금 늦었지만 답변을 찾을 때이 질문을 찾았으며 공유 할 답변이 있습니다.

나는 당신이 신비한 apt_preferences 세계를 통해 이것을 할 수 있다고 생각합니다.

/ tmp / a_p (또는 무엇이든)라는 파일을 이렇게 만들어보십시오 ...

Package: *
Pin: release a=*-backports
Pin-Priority: 100

Package: *
Pin: release n=*
Pin-Priority: 1001

그런 다음 다음을 실행하십시오.

sudo apt-get -o Dir::Etc::Preferences=/tmp/a_p dist-upgrade

파일의 두 번째 섹션은 기본적으로 OP가 요청한 작업을 수행합니다. 다운 그레이드를 의미하더라도 라이브 저장소에있는 모든 패키지의 우선 순위가 충돌하여 설치되도록합니다.

첫 번째 섹션은 두 번째 섹션이 모든 백 포트 설치를 트리거하지 못하게합니다. 관심이 있거나 원하지 않을 수도 있습니다. 나는 무엇이 작동하는지 땜질하는 것이 좋습니다. apt-cache -o Dir::Etc::Preferences=/tmp/a_p policy somepkga_p 파일이 특정 패키지에 어떤 영향을 미치는지 확인할 수 있습니다 .


6

ppa-purge 스크립트가 있다면 무엇입니까?

PPA 및 업그레이드 된 소프트웨어를 추가 한 경우 repo를 제거하고이 단계에서 업그레이드 된 모든 패키지를 다운 그레이드 할 수 있습니다.

ppa-purge [레포 이름]

이것은 다른 사람에게 유용합니까?

그러나 설치된 버전이 더 높은 경우에도 사용 가능한 최고 버전을 설치할 수 있다면 여전히 열려 있습니다 ...

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.