aptitude 理解的虚拟包和包管理

aptitude 理解的虚拟包和包管理

我在 Debian 中看到相当多的包是虚拟包。为什么会有这样的虚拟包存在?

例如:-

$ aptitude show pppoeconf
Package: pppoeconf                       
State: installed
Automatically installed: no
Version: 1.21
Priority: optional
Section: net
Maintainer: Gregory Colpart <[email protected]>
Architecture: all
Uncompressed Size: 297 k
Depends: whiptail-provider | whiptail, ppp (>= 2.4.2+20040428-2) | pppoe (>= 3.0), ppp (>= 2.4.1.uus2-4), gettext-base (>= 0.13), sed (>= 3.95),
         ifupdown (>= 0.7.44~), iproute2
Recommends: locales
Suggests: xdialog
Description: configures PPPoE/ADSL connections
 User-friendly tool for initial configuration of a DSL (PPPoE) connection.

请参阅建议:-

Suggests: xdialog

现在让我们尝试更仔细地观察它 -

$ aptitude show xdialog
No current or candidate version found for xdialog
Package: xdialog
State: not a real package

为什么它在那里?可能是这样,这是一个真正的包裹,比如 wheezy 或 jessie,然后它被删除了。这是唯一的原因还是有可能有更多的原因?

上面我只是举个例子。

答案1

曾经xdialog有这样一个包,但它被删除了。判断从它的主页作者和 Debian 人之间发生了一些麻烦。

还有其他所谓的虚拟包,它们不存在,但由其他包提供。当不同的包提供相同的功能时,使用这些机制。

例如包邮件传输代理是一个由 exim、postfix、qmail 等提供的虚拟包。因此,如果您有一个需要 MTA 的包,您可以使其依赖于该虚拟包,而不必使其依赖于 exim 或 postfix 或 qmail ..
如果出现其他替代方案,您也不必更改您的包。

相关内容