Synaptic 究竟如何跟踪“存储库中的新”包?

Synaptic 究竟如何跟踪“存储库中的新”包?

此信息是 APT 缓存的一部分吗?还是会创建一个单独的文件来与新缓存进行比较?那么它存储在哪里?

答案1

如果我没记错的话,您正在寻找的文件是:

  • /var/缓存/apt/pkgcache.bin
  • /var/缓存/apt/srcpkgcache.bin

这是二进制和源码包的本地包数据库。每次运行apt-get update或 Synaptic 等程序时都会更新。

答案2

要从 apt 缓存中提取信息,您可以使用apt-cache或其他 Debian/Ubuntu 工具(如 aptitude)。有关说明和示例,请参阅man apt-cacheDebian 软件包管理手册

例如:

apt-cache show software-center

将列出完整的包信息。

Synaptic 本质上是 apt 的 GUI 包装器,因此 apt 会跟踪存储库和包信息,而 Synaptic 会对其进行查询。

用 bash 脚本包装 apt-cache 可能是自己做类似事情的最简单方法。Synaptic 通过 C++ 使用 libapt-pkg*,但也有适用于 Perl 和 Python 的库。

在 aptitude 中查找新软件包

aptitude search '~N'

相关内容