“apt-cache depending”从哪里收集依赖信息?

“apt-cache depending”从哪里收集依赖信息?

我想修改 Debian 软件包的依赖项,并且我已在其控制文件中进行了更改。但是,列表apt-cache depends pkg_name仍然显示已删除的依赖项。那么,上述命令从哪里获取 Debian 软件包的依赖项列表?它不是从控制文件中获取的吗?

答案1

apt-cache数据来自以下列表:

/var/lib/apt/lists

例如:

grep -i "Package: wget$" -A10 /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_zesty_main_binary-amd64_Packages

但是如您所知,deb 包的元数据也包含依赖项列表。

因此,如果您想了解deb文件对其自身依赖项的看法,请运行:

dpkg -I package-name.deb | grep -i depends

答案2

我不清楚你在做什么,但我正在尝试回答你的问题
“apt-cache depending”从哪里收集依赖信息?

当您运行时,它会从文件和 目录apt-get update中提到的存储库中获取所有包的元数据。/etc/apt/sources.list/etc/apt/sources.list.d

这些元数据存储在两个文件中

/var/cache/apt/pkgcache.bin

var/cache/apt/srcpkgcache.bin

apt-cache命令使用这两个缓存文件来显示用户的查询。


这些文件如何更新?

srcpkgcache.bin包括你通过 deb 和 deb-src 行从互联网上获得的所有信息 这些信息仅在 apt-get update 上更改

其中缓存了apt 和 dpkg 状态文件内pkgcache.bin 的信息以及从中提取的信息。srcpkgcache.bin
这些信息会随着 apt 或 dpkg 所做的每次更改而改变。

相关内容