此信息是 APT 缓存的一部分吗?还是会创建一个单独的文件来与新缓存进行比较?那么它存储在哪里?
答案1
如果我没记错的话,您正在寻找的文件是:
- /var/缓存/apt/pkgcache.bin
- /var/缓存/apt/srcpkgcache.bin
这是二进制和源码包的本地包数据库。每次运行apt-get update
或 Synaptic 等程序时都会更新。
答案2
要从 apt 缓存中提取信息,您可以使用apt-cache
或其他 Debian/Ubuntu 工具(如 aptitude)。有关说明和示例,请参阅man apt-cache
或Debian 软件包管理手册
例如:
apt-cache show software-center
将列出完整的包信息。
Synaptic 本质上是 apt 的 GUI 包装器,因此 apt 会跟踪存储库和包信息,而 Synaptic 会对其进行查询。
用 bash 脚本包装 apt-cache 可能是自己做类似事情的最简单方法。Synaptic 通过 C++ 使用 libapt-pkg*,但也有适用于 Perl 和 Python 的库。
在 aptitude 中查找新软件包
aptitude search '~N'