업그레이드할 때 '보류 중인' 패키지가 표시되지 않도록 방지

업그레이드할 때 '보류 중인' 패키지가 표시되지 않도록 방지

3개의 패키지를 사용했지만 sudo apt-mark hold nameofthepackage이제 다음으로 업그레이드할 때 짜증나는 말이 있습니다 sudo apt-get upgrade.

Following packages have been holded : 
  package1 package2 package3
0 upgraded, 0 installed, 0 to remove and 3 non-updated.

(터미널의 부정확한 출력에 대해 죄송합니다. 저는 프랑스어 버전을 사용하고 있는데 이것을 영어로 어떻게 말하는지 정확히 모르겠습니다.)

이것을 "숨기는" 방법이 있습니까? 0 non-updated패키지를 들고 있을 때도 평소대로 갖고 싶다 . 감사해요

답변1

Apt Preferences를 사용하여 패키지 버전 고정

  1. 내 패키지의 현재 우선순위 정책을 확인하세요. 예를 들면 다음과 같습니다 virtualbox.

    $ apt-cache policy virtualbox
    virtualbox:
      Installed: 4.3.6-dfsg-1
      Candidate: 4.3.6-dfsg-2
      Version table:
         4.3.6-dfsg-2 0
            500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse amd64 Packages
     *** 4.3.6-dfsg-1 0
            100 /var/lib/dpkg/status
    
  2. 다음 위치에 새 파일 만들기/etc/apt/preferences.d/

    sudo vim /etc/apt/preferences.d/my_pin
    
  3. 원하는 패키지를 추가하고(조커를 *사용할 수 있음) 더 높은 우선순위(기본값 0, 최대값 1000또는 -1버전 건너뛰기와 같은 음수 값) 를 추가합니다.

    Package: virtualbox*
    Pin: version 4.3.6-dfsg-1
    Pin-Priority: 500
    
  4. 다시 확인하세요:

    $ apt-cache policy virtualbox
    virtualbox:
      Installed: 4.3.6-dfsg-1
      Candidate: 4.3.6-dfsg-1
      Package pin: 4.3.6-dfsg-1
      Version table:
         4.3.6-dfsg-2 500
            500 http://archive.ubuntu.com/ubuntu/ trusty/multiverse amd64 Packages
     *** 4.3.6-dfsg-1 500
            100 /var/lib/dpkg/status
    
  5. 보류를 사용할 필요가 없으므로 sudo apt-mark unhold virtualbox두 번째 잠금으로 남겨 둘 수 있습니다.

이제 확인하면 (보류 패키지 목록에 있음) apt-get update에 대해 언급된 내용이 없습니다 .virtualbox

관련 정보