私は(まだ)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つがこのパッケージのバージョン1.6-1に依存しているようです。なぜなら、どのパッケージもこのライブラリと衝突/衝突しないからです。