APT::Default-Release "stable"은 다른 저장소를 추가한 후 자동 패키지 업그레이드를 방지하기에 충분하지 않습니다.

APT::Default-Release "stable"은 다른 저장소를 추가한 후 자동 패키지 업그레이드를 방지하기에 충분하지 않습니다.

참고: 이 질문과 답변을 작성하는 동안 Debian Stable은버스터, 데비안 테스트는황소의 눈.

저는 Debian Stable을 사용하고 있으며 최신 버전의 패키지를 설치하고 싶습니다. Debian Test에서 사용할 수 있습니다.

기존 통념에서는 그렇게 하기 위한 절차가 다음과 같다고 생각합니다.

  1. 관련 deb줄을 추가하십시오./etc/sources.list
deb     http://deb.debian.org/debian/ bullseye main non-free
deb-src http://deb.debian.org/debian/ bullseye main non-free
  1. 모든 패키지가 업그레이드되는 것을 방지하려면 /etc/apt/apt.conf다음 줄을 생성하거나 수정하고 여기에 넣어야 합니다.
APT::Default-Release "buster";

그런 다음 apt install -t testing packagename.


그러나 해당 Default-Release지시어를 추가했음에도 불구하고 다음을 실행할 때 내 시스템은 여전히 ​​일부 업데이트를 제공합니다 apt update.

apt upgrade일반적인 시스템 유지 관리의 일부로 이러한 업데이트를 실행할 때 이러한 업데이트가 설치되지 않도록 하려면 어떻게 해야 합니까?

답변1

문제를 일으키는 패키지가 설치되었거나 업그레이드되었습니다.stable-updates풀어 주다.

Default-Release지시문은 release 우선순위만 높입니다 stable. 따라서 새로 추가된 testing저장소는 동일한 우선순위를 가지며 stable-updates버전 번호가 더 높으므로 버전을 설치합니다.testing

stable-updates이는 또한 버전이 선호된다고 apt에 지시했기 때문에 향후 릴리스 버전이 설치되지 않는다는 부작용도 있습니다 stable.

제공된 버전의 출처와 우선순위를 조사하는 데 사용할 수 있습니다 apt-cache policy [packagename].


더 좋은 방법은 다음을 사용하는 것입니다.고치기 쉽다.

먼저 해당 APT::Default-Release "buster";줄을 삭제합니다 /etc/apt/apt.conf(또는 해당 줄만 있는 경우 전체 파일을 삭제합니다).

/etc/apt/preferences다음 줄을 생성하거나 수정 하고 추가합니다.

Package: *
Pin: release n=bullseye
Pin-Priority: 50

*그러면 ( )라는 배포판의 모든 패키지를 살펴보고 bullseye우선 순위 50을 할당합니다.

이는 설치된 패키지의 값(100)보다 낮으므로 bullseye.

또한 다른 저장소에 설치되지 않은 패키지의 값(500)보다 낮습니다. 따라서 패키지가 사용 가능해지면 계속 업그레이드할 수 있지만 최신 버전보다 이전 저장소의 최신 버전을 선호합니다 bullseye. (한 번 보세요데비안 매뉴얼의 관련 섹션더 알아보기. )

apt update이제 실수로 아무것도 변경 하지 않고 실행할 수 있습니다 apt ugprade.


참고: 내 시스템에는 아직 업그레이드할 수 있는 두 개의 패키지가 있습니다. 이는 두 보안 업데이트를 모두 수정한 시스템 설치 기본 설정 파일 덕분이며 만족스럽습니다.

관련 정보