对于特定的包,我可以找出安装它的原因吗?
那么,我可以看到它是手动安装的,还是作为另一个包的依赖项安装的?或者它是作为发行版的一部分安装的?
这个问题类似于如何找出安装软件包的原因?,但在我的情况下,我想在实际安装软件包之前知道为什么它会安装特定的依赖项。
所以例如我可能会跑
sudo apt-get install superfoo
Run Code Online (Sandbox Code Playgroud)
输出将显示如下内容:
The following extra packages will be installed:
foo bar baz ... libderp libjunk
Run Code Online (Sandbox Code Playgroud)
这可能是一个非常庞大的清单。在某些情况下,我会看到将要安装的东西,鉴于我正在安装的东西对我来说并没有什么意义,所以我想知道为什么要安装那个特定的依赖项。
在上面的例子中,假设我想了解为什么libderp
会被安装。我知道以某种方式在superfoo
和之间存在依赖链,libderp
但是要安装的大量软件包列表使得很难看到这条链是什么。
一旦我知道依赖链,我就可以决定我是否真的想要安装原始包,和/或我是否应该与该包的维护者联系,看看他们是否真的需要在那里拥有这些依赖。