私のElementary OSシステムでは、dpkgは削除された多くのカーネルパッケージを報告します。 (以前に削除することをお勧めします。)完全に忘れられたいのですが、どうすればこのようにして得ることができるのかわかりません。
たとえば、
elementary:~$ dpkg -l linux-*-3.2.0-51*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Description
+++-====================================-====================================-========================================================================================
un linux-headers-3.2.0-51 <none> (no description available)
un linux-headers-3.2.0-51-generic <none> (no description available)
un linux-image-3.2.0-51-generic <none> (no description available)
apt-get purgeが機能しません。
elementary:~$ sudo apt-get purge linux-headers-3.2.0-51
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package linux-headers-3.2.0-51 is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
dpkgが機能しません:
elementary:~$ sudo dpkg --purge linux-headers-3.2.0-51
dpkg: warning: there's no installed package matching linux-headers-3.2.0-51
elementary:~$ sudo dpkg --forget-old-unavail
dpkg: warning: obsolete '--forget-old-unavail' option, unavailable packages are automatically cleaned up.
apt-cacheは以下を示しています:
elementary:~$ apt-cache policy linux-headers-3.2.0-51
linux-headers-3.2.0-51:
Installed: (none)
Candidate: 3.2.0-51.77
Version table:
3.2.0-51.77 0
500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
適性がインストールされていません。
明らかに私が理解していないものがあります。 dpkg -lが削除されたパッケージを表示するのはなぜですか? dpkgがそれらを忘れるようにするにはどうすればよいですか?
答え1
出力によると、apt-cache policy
まだアーカイブ(使用可能)にあるので、dpkgはこれを忘れません。したがって、短い答えは、その履歴を削除する方法がないということです。
長い答えは、/var/lib/dpkg/status
これを行うために編集(プレーンテキストファイル)できることです。必ずバックアップを維持してください。このファイルを破損するのは良いことではなく、「再インストールしてみましたか?」と同じくらい悪いことです。
答え2
dpkg --clear-avail
dpkgsを使用して利用可能なパッケージのリストを削除できます。