您可能不明白为什么在新安装的Fedroa 22中找不到yum软件包、调用/usr/bin/yum或使用各种yum插件时收到警告。

嗯,你看到的没错,Yum 已经去了~。直白的说, DNF 现在是 Fedora 上默认是包管理器了。

DNF 由 Yum 中分支出来,采用了基于 SAT 的依赖解决算法,目标是在 Fedora 22中取代 Yum。随着 DNF 1.0 的发布,已经到了取而代之的时候了。Yum 无法适应倡导“默认即 Python 3”理念的 Fedora ,而 DNF 则可以同时支持 Python 2 和 Python 3。 DNF 按照相同的语义逻辑保留了命令行接口的一致。幸运的是,DNF 的 Python API是完全不同于 Yum 的。这两个项目之间的所有已知的不兼容都已经记录在案了。在 Fedora Core 22 中只有 DNF,官方不会提供 Yum 了。当然,如果你愿意,可以自己下载它。这个包仍然可以如同以往一样调用, Python API 也没变化,只是 yum 程序的名称被改名为 yum-deprecated 了,而且从命令行调用 yum 会被重定向到 DNF。这样,你就可以在系统上同时维持 Yum 和 DNF 了。

启动 DNF 项目的原因是由于 Yum 的三大问题:API 缺乏文档、有问题的依赖解决算法,及无法重构内部函数。这里提到的最后一个问题,其实和文档的缺乏有关。Yum 插件使用的各种方法来源于 Yum 的代码,一旦改变有可能造成 Yum 的突然崩溃!DNF 致力于解决这些 Yum 的问题,从一开始,所有对外的 API 的要做好完备的文档。在绝大多数新提交中都包含了测试单元。不允许各种奇怪的、乱七八糟的补丁。该项目是通过敏捷开发进行的:对用户会有较大影响的需求会得到尽快的实现。

现在,DNF 团队正在移植各种流行的 Yum 插件到 DNF 上,并改进其用户体验。为了更加方便切换到 DNF,我们开发了一个 DNF 移植插件,来将 Yum 中已经安装的包、分组和事务数据导入到新的 Fedora 包管理器中。赶快转移到 DNF 吧,希望你喜欢!

Jan Silhan, by DNF team

本文由 LCTT 原创翻译,Linux中国首发。也想加入译者行列,为开源做一些自己的贡献么?欢迎加入LCTT!

翻译工作和译文发表仅用于学习和交流目的,翻译工作遵照CC 协议规定,如果我们的工作有侵犯到您的权益,请及时联系我们。

欢迎遵照CC 协议规定转载,敬请在正文中标注并保留原文/译文链接和作者/译者等信息。

文章仅代表作者的知识和看法,如有不同观点,请楼下排队吐槽:D

1.《dnf侦探事务凶手是谁》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《dnf侦探事务凶手是谁》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/2056789.html