【问题标题】:What is the "package selection data" in Debian's package management system?Debian 软件包管理系统中的“软件包选择数据”是什么?
【发布时间】:2018-09-09 14:59:04
【问题描述】:

我正在学习 Debian 的包管理系统并阅读了Chapter 2. Debian package management。但是我很难理解“选择”的概念,或者可能是“包选择”。更具体地说:

  • 究竟什么是“包选择”?
  • “包选择”选择什么?
  • 在什么情况下我需要关心“包选择”?

例如,每当我想查找我的系统上是否安装了软件包时,我通常会运行dpkg --get-selections 'PACKAGE-NAME'。坦率地说,我不知道为什么该选项被称为get-selections 以及为什么我应该使用它。我转向dpkg manpage,但没有进一步解释。上面的章节似乎也没有解释。

在阅读 Debian 参考资料时,我看到了另一个名为 dselect 的工具,它也有助于管理软件包。我也很好奇为什么叫“选择”,这可能是对理解“选择”概念的一个暗示。

根据我目前的研究,我有一些猜测:

  • “选择”可能与同一软件包的多个版本有关。我可以在我的系统上安装所有版本,但“选择”指定哪个版本是活动版本。
  • “选择”可能与用于相同目的的替代软件包有关。例如,我可能会在我的系统上安装vi、vim 和nvi,并且“选择”指定哪个是当前使用的。

但是,上面的理解看起来并不正确,因为这似乎可以通过使用符号链接来解决。

希望有人能给我解释一下。感谢您的帮助!

【问题讨论】:

  • 您可能会在 Unix & Linux 上获得更好的帮助。
  • @EdCottrell 有道理!有没有办法在站点之间移动问题?还是我必须在那里重新发布?
  • 您可能需要考虑该站点的"be nice" policy。一般来说,对试图帮助你的人说“有道理!”不会被视为友善。您本可以删除该问题并将其发布在其他网站上。既然你在这里得到了帮助,你不需要这样做。我不知道你为什么会在这里接受一个答案,然后对第一个试图为你指出正确方向的人大喊大叫。
  • @EdCottrell 哦,抱歉,Ed。我没有意识到“有意义”在这种情况下可能听起来不太好,因为英语不是我的母语。我认为这里的“有意义”可能与“好主意”相同。我不是故意粗鲁的。
  • @EdCottrell 啊哈,我想下次我会直接说我的意思,例如“好主意”或“谢谢建议”,应该更安全。 :D

标签: debian package-managers dpkg


【解决方案1】:

如果您写dpkg --get-selections(此命令通常包含在 crontab 中,以便我们备份机器上实际安装的软件包),您将获得所有已安装和卸载(但未清除)的软件包的列表。

所以选择是包的状态之一:

  • install:安装包
  • deinstall:不再安装包(但配置文件被保留,所以包不像未安装(或清除)的包)。 dpkg 仍然跟踪配置文件。

据我所知,您也可以告诉 dpkg install、hold、deinstall 或 purge( --set-selections)

这是一种选择,所以名称。还有其他状态(安装成功、postinst 出错、untar 出错……)。

注意:Debian 参考手册是一本非常古老的手册,是“有机地”成长起来的。随意填补一个错误(次要或希望),以便志愿者可以改进它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-04
    • 2012-04-22
    • 1970-01-01
    • 1970-01-01
    • 2017-12-30
    • 2020-06-11
    • 2012-06-08
    • 2022-09-25
    相关资源
    最近更新 更多