dpkg-query 如何找到一些从未安装过的 deb 软件包?

dpkg-query 如何找到一些从未安装过的 deb 软件包?

为什么某些软件包可以通过所需的操作和状态找到,dpkg-queryunknown其他not-installed软件包则根本找不到?例如,我从未安装过名为 的包debian-handbook,但它以某种方式显示在dpkg-query -l debian-handbook或 的输出中dpkg-query -s debian-handbook。另一方面,例如一些我从未接触过的包不会出现在输出中dpkg -l

root@T60:~# dpkg -l gkermit
dpkg-query: no packages found matching gkermit
root@T60:~# apt-cache policy gkermit
gkermit:
  Installed: (none)
  Candidate: 1.0-9
  Version table:
     1.0-9 0
        500 http://http.debian.net/debian/ jessie/main i386 Packages
root@T60:~# 

答案1

我认为dpkg -l找到被提及为当前安装的软件包的依赖项的软件包,并且找不到其他可用的软件包。 (此处“已安装”包括“仅限conffiles”软件包,即已删除但未清除的软件包,如uc中所列dpkg -l。)列出了 dpkg文件 ( )dpkg -l中提到的软件包。status/var/lib/dpkg/status

可能还有其他原因决定软件包是否被列出dpkg -l,但我认为这是主要的。

相关内容