设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 RedHat 查看内容

Fedora的包管理器已从Yum切换到DNF

2015-5-18 22:46| 发布者: joejoe0332| 查看: 3327| 评论: 0|原作者: 钱曙光|来自: CSDN

摘要: 你想知道为什么Yum包没有安装到Fedora 22中?为什么当你调用/usr/bin/yum等文件或任何yum-util插件时有警告?你应该看下右侧界面,Yum已经被DNF取代,DNF成为了Fedora新默认的包管理器。 ...

  你想知道为什么Yum包没有安装到Fedora 22中?为什么当你调用/usr/bin/yum等文件或任何yum-util插件时有警告?你应该看下右侧界面,Yum已经被DNF取代,DNF成为了Fedora新默认的包管理器。


data/attachment/portal/201505/18/224626jq36hzs2xxup84ss.jpg


  DNF从Yum分支出来,使用专注于性能的C语言库hawkey进行依赖关系解析工作,大幅度提升包管理操作效率并降低内存消耗,按原先的节奏本应该是Fedora 22实现这一替代方案。但随着DNF 1.0版本的发布,这一刻终于到来。


  这样的激进更新是不可避免的,主要是由于Yum不能“Python 3 as default”,而DNF支持Python 2和Python3。(Python 3分支自2008年发布以来积极开发了五年,已经成熟和稳定,而目前仍在维护的Python 2分支不增加新特性,只接受bug和安全修正,它最早的版本是在2000年发布的。)与此同时,DNF Python API和Yum是完全不同的,这两个项目中所有已知的不兼容问题也都被记录。


  在Fedora 22 Core中只有DNF而Yum项目正式宣告死亡。


  Yum依然可以下载到,也可同样调用软件包,以及Python API照旧。只是Yum可执行文件被重新命名为yum-deprecated,以及Yum调用的命令行被重新定向至DNF。这样你就可以在一个系统上同时保有Yum和DNF。


  启动DNF项目的原因是Yum的三个陷阱:undocumented API、broken dependency solving algorithm和inability to refactor internal functions。最后被提及的问题是缺少文件链接。Yum插件可以在Yum代码中使用任何method,这会造成Yum utility因一些细小变化而突然崩溃。


  DNF目标是为了避免Yum执行的错误。从一开始所有暴露的API都被适当的记录,且测试几乎包含了每一次新的提交。这个项目采用了敏捷开发,会提供用户一些优先级功能实现。


  DNF现在也在极力推进Yum迁移至DNF,并改善用户体验。为了实现轻松迁移,已经将DNF迁移插件导入了包、组和事务元数据,实现从Yum至新的Fedora包管理器。


                                                By DNF团队Jan Silhan

英文原文:Yum is dead, long live DNF


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部