aptitude:大括号的含义,即package1 {b} package2 {a} package3 {u}


14

使用aptitude时,更改的软件包列表有时在某些软件包名称后面的大括号中带有单个字符。手册页有两个示例,但没有解释(版本0.6.10-1)。

到目前为止,我已经注意到{b},{a}和{u}。前一个似乎在运行时显示aptitude install并尝试重新安装我删除的软件包(例如,通过debfoster,如何禁用该软件包?),后两个似乎与自动依赖项解析有关。

这些字符是什么意思,还有其他字符,它们对其他操作有什么影响?这些额外信息是否可供dpkg或使用apt

Answers:


8

这些没有记录。我的猜测是a用于自动安装,u用于(自动?)升级以及b用于安装软件包以修复损坏的软件包。

这意味着debfoster删除不应该使用的软件包,请注意该网站说:

As of 2006-01-01, debfoster is officially deprecated.

多年来,由于apt系统的更改,这可能会产生错误。您可以aptitude search '~b'在使用后进行确认debfoster(这将列出损坏的软件包)。

请注意,apt现在支持依赖项包的自动标志,并具有apt-get autoremove。有了才智,您也可以做到aptitude remove '~g'

更新资料

玩弄天才,事实证明,如果我?在得到Do you want to continue? [Y/n/?]提示时按,则会收到以下消息:

In the list of actions to be performed, some packages will be followed by one or
more characters enclosed in braces; for instance: "aptitude{u}".  These
characters provide extra information about the package's state, and can include
any combination of the following:

  'a': the package was automatically installed or removed.
  'b': some of the package's dependencies are violated by the proposed changes.
  'p': the package will be purged in addition to being removed.
  'u': the package is being removed because it is unused.

因此,似乎b应该是破损的包装。虽然,在您的情况下,如果没有任何损坏,似乎会显示一个错误。我无法重现该问题,但aptitude确实尝试重新安装我删除的软件包,但apt-get括号中没有任何内容。

另请注意,这aptitude keep-all可能比移除更安全/var/lib/aptitude/pkgstates


ps auxf显示,debfoster只是调用apt-get --purge remove pkg1 pkg2 etc.,搜索“〜B”回报什么,接下来aptitude install重新安装PGK1则pkg2等
有限graygreen

1
@finitegraygreen,我想那不是破包的!您可以尝试使用它aptitude why来查找正在发生的事情或仅查找该--show-why选项。
Graeme 2014年

@finitegraygreen,这里的结论是什么?b毕竟是坏了还是aptitude why出现了其他原因?我确定我会在某个时候再次遇到这个问题,很高兴知道……
Graeme 2014年

好吧,结论是“这些没有记录”。然后,我通过删除强迫了健忘症,从而终止了apt-get和aptitude之间的干扰/var/lib/aptitude/pkgstates。否则,我仍然会得到apt-get remove pkg; aptitude why pkg“无法找到安装原因”;aptitude install然后安装pkg。
有限graygreen 2014年

@finitegraygreen,事实证明它们是什么意思。查看更新后的答案。
Graeme 2014年

1

本帖由资质作者解释{a}{u}

  • {a} 意味着除了您要的以外,还将另外安装该软件包。
  • {u} 表示该软件包未被系统使用,将被删除。

不幸的是,它没有解释{b}

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.