적성을 사용하여 "업그레이드되지 않은" 패키지를 처리하는 방법은 무엇입니까?

적성을 사용하여 "업그레이드되지 않은" 패키지를 처리하는 방법은 무엇입니까?

나는 (아직도) Debian Squeeze를 사용하고 있습니다. 시스템을 업그레이드하려고 하면 다음 메시지가 나타납니다.

[09:20]/root# aptitude upgrade
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

로그를 보면 범인 패키지 이름에 대한 힌트를 얻었습니다.

Aptitude 0.6.3: log report
Sat, Jun 22 2013 09:20:13 +0200

IMPORTANT: this log only lists intended actions; actions which fail due to
dpkg problems may not be completed.

Will install 0 packages, and remove 0 packages.
===============================================================================
[HOLD] libxcb1
===============================================================================

Log complete.

그러나 패키지를 보면 더 자세한 정보를 얻을 수 없습니다.

[09:21]/root# aptitude show libxcb1
Package: libxcb1
State: installed
Automatically installed: no
Version: 1.6-1
Priority: optional
Section: libs
Maintainer: XCB Developers <[email protected]>
Uncompressed Size: 188 k
Depends: libc6 (>= 2.3.2), libxau6, libxdmcp6
Breaks: libxcb-xlib0
...

aptitude놀랍게도 패키지 업그레이드를 거부한다는 정보가 거의 없습니다.

내 질문은 다음과 같습니다이 경우 이 패키지가 업그레이드되지 않는 이유를 알아보려면 어떤 단계를 수행해야 합니까?


고쳐 쓰다:필수 명령은 다음과 같습니다.

$ apt-cache policy libxcb1
libxcb1:
  Installed: 1.6-1
  Candidate: 1.6-1+squeeze1
  Version table:
     1.6-1+squeeze1 0
        500 http://security.debian.org/ squeeze/updates/main amd64 Packages
 *** 1.6-1 0
        500 http://debian.mirrors.ovh.net/debian/ squeeze/main amd64 Packages
        100 /var/lib/dpkg/status

답변1

aptitude가 해당 버전의 패키지를 설치하기를 원하지 않는 이유를 알아야 합니다 why-not. 신속하게 알아낼 수 있습니다.

aptitude why-not libxcb1=1.6-1+squeeze1

하지만 내 생각에는 79개의 역 종속성 중 하나가 이 패키지의 버전 1.6-1에 의존하는 것 같습니다. 왜냐하면 어떤 패키지도 이 라이브러리와 충돌/충돌하지 않기 때문입니다.

관련 정보