Yum还没学好呢,突然听到已经要被抛弃了.恐慌至极..

  在最新版的Fedora 22 抛弃了Yum包管理器,取而代之的是DNF..

  那么搜搜 Fedora 22 Release Note..

  官方给出了解释和一些改变.

  在最新的Fedora 22 试了下 基本的安装更新用法也没怎么变

  以前安装 yum install httpd ,变成 dnf install httpd

以下是官方文档,有时间慢慢翻译..

3.6.1. Yum replaced by DNF

The yum package manager has been replaced in Fedora 22 by its successor, dnf. The yum fork has been available in Fedora for testing since Fedora 18, and is now the default command line package manager.
Most dnf commands use directives that are familiar to yum users, and it uses the same RPM package repositories. Behind the scenes, dnf uses an improved dependency solver, hawkey, along with librepo for repository operations and libcomps for package groups.
The /usr/bin/yum command will redirect to /usr/bin/dnf and print a warning about the redirection. The legacy yum package manager can be manually installed; the legacy command line utility has been renamed to yum-deprecated.
Read more about using dnf! Consult the upstream documentation athttp://dnf.readthedocs.org/en/latest/index.html. Extra plugins are documented at https://rpm-software-management.github.io/dnf-plugins-extras/index.htm
The behavior of dnf differs from yum in some areas:
3.6.1.1. Updates that don't work are skipped
If a portion of a transaction is not viable, dnf will automatically exclude it and transparently continue with the portions that will work. For example, if a package has unmet dependencies during a dnf update action, that package will not be updated, but others will. This is similar to yum's --skip-broken directive, but evaluates the impact of the problem against the entire transaction. Because this is the default behavior, there is no --skip-broken switch for dnf.
To reveal details about a problematic package direction, you can use the --best option. dnf update --best will force dnf to resolve the transaction using the latest versions of involved packages, and report any problems instead of skipping them. This is equivalent to yum's behavior without --skip-broken.
3.6.1.2. Repos that don't work are skipped
If a configured and enabled repository does not respond, dnf will skip it and continue the transaction with the available repos. This differs from yum, which would immediately stop if a repository was not available.
3.6.1.3. Update and Upgrade are the same
The commands dnf update and dnf upgrade are equivalent. This differs from yum, where yum upgrade would have the same effect as yum update --obsoletes, and take obsolete packages into account.
3.6.1.4. Dependencies are not upgraded on package installation
When installing a new package, previously installed dependencies will not be upgraded. Yum offered an option for this behavior, upgrade_requirements_on_install. To upgrade with dnf, use dnf update.
If dnf reports that dependencies on installed packages are unmet while installing a new package, update the dependent packages before trying again.
3.6.1.5. Clean on remove
When removing a package, dnf will automatically remove any dependent packages that were not explicitly installed by the user. If a package was independently installed, it won't be uninstalled this way. Only packages installed as dependencies are removed.
This behavior is configured by the clean_requirements_on_remove option in /etc/dnf/dnf.conf
3.6.1.6. Repo cache refresh schedule
By default, dnf will check for updates in configured repositories hourly, starting ten minutes after the system boots. The action is controlled by a systemd timer unit, /usr/lib/systemd/system/dnf-makecache.timer.
To adjust this, copy the timer file to /etc/systemd/system/dnf-makecache.timer and edit it.
Alternatively, setting the metadata_timer_sync in /etc/dnf/dnf.conf to a number of seconds configures the minimum number of seconds between makecache operations. If the timer has not expired, dnf makecache will exit immediately.
dnf will also honor the metadata_expire option set in individual repo configs, and refresh repo metadata at runtime if it is too old. This option is described in man yum.conf.
3.6.1.7. Repository Actions
The repository-packages directive can be used to search for or get info about packages in a specific repository, list installed packages from that repository, and more. This simplifies operations that would have required use of --excluderepo and --includerepo options with yum, and is especially useful for managing similar packages from different repositories.
3.6.1.8. Listing dependencies
To find out what package supplies a particular provide, use the dnf provides foo command. This replaces yum resolvedep foo.
To list the dependencies of a package, use dnf repoquery --requires foo. This replaces yum deplist foo.
3.6.1.9. dnf will remove kernels
kernel packages are not protected by dnf. Unlike with yum, you can remove all kernel packages, including the running package, if you direct it to. Be cautious with removing kernels, and specify the full version and release when removing them for best results.
3.6.1.10. Replacing packages
When a system requires the capabilities of a package you want to replace, use the --allowerasing option. For example, dnf --allowerasing mariadb will allow you to replace mysql with mariadb, without disrupting packages that require capabilities provided by both packages. This replaces yum shell and yum swap functionality.
3.6.1.11. DNF Langpacks Plug-in
DNF supports installing language packs using the dnf-langpacks plug-in, which is expected to work identically to the older yum-langpacks plug-in. See Section 4.3.3, “DNF Langpacks Plug-in” for details.
3.6.1.12. Support for disabled repositories
The Software tool and PackageKit now support searching for packages in disabled repositories.
If a user searches for a package using one of these applications and the package is found in a repository which includes the line enabled_metadata=1 in its definition, a dialog window will be displayed informing the user that the package has been found, but an additional repository must be enabled before it can be installed.
The same message can also inform the user about the reason why the repository is disabled by default.
This change allows Fedora remixes to ship pre-configured but disabled repositories for any reason - for example, if said repositories contain non-free software. Fedora itself does not have any such repositories pre-configured; therefore this feature will not be visible on a Fedora 22 installation unless you specifically configure one or more repositories with the enabled_metadata=1 statement.
 
 

DNF(一.YUM已死,DNF代之)的更多相关文章

  1. fedora从22开始就用dnf代替yum了

    yum有一些不好的缺点, 从fc22开始, 就用 dnf代替yum了 dnf: "毒奶粉" yum: "黄狗" dnf的用法根yum的用法完全一样, 只是用dn ...

  2. CentOS 8配置本地yum源及DNF简介

    CentOS 8更改了软件包的安装程序,取消了 yum 的配置方法,改而使用了dnf 作为安装程序.虽然改变了软件包的安装方式,但是 dnf 还是能兼容使用 yum 的配置文件和命令的使用方法. 小提 ...

  3. JVM 判断对象已死,实践验证GC回收

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 提升自身价值有多重要? 经过了风风雨雨,看过了男男女女.时间经过的岁月就没有永恒不变 ...

  4. JVM——对象已“死”的判定

    主要针对Java堆和方法区 1.判断对象是否已"死" Java堆中存放着几乎所有的对象实例,垃圾回收器在对堆进行回收之前,首先应该判断这些对象哪些还"存活",哪 ...

  5. wp已死,metro是罪魁祸首!

    1.这篇文章肯定会有类似这样的评论:“我就是喜欢wp,我就是喜欢metro,我就是软粉“等类似的信仰论者发表的评论. 2.2014年我写过一篇文章,windows phone如何才能在中国翻身? 我现 ...

  6. 泰泽新闻:英特尔三星双否认泰泽Tizen系统已死

    7月8日 据媒体TizenExperts报道,关于“Tizen系统跳票”的传闻已经遭到了英特尔和三星否认. 此前传闻三星自行研制的智能手机Tizen操作系统流产,但如今已经遭到了官方的否认. 英特尔三 ...

  7. Android首席设计师宣称移动概念已死,开发人员应该面向屏幕编写应用而非移动

    腾讯科技对Android首席设计师Duarte"移动已死"訪谈内容的翻译错得离谱,被到处转载,误人视听. 而要真正理解Duarte所想表达的含义,须要深入了解互联网前沿设计理念以及 ...

  8. MVC模式已死

    MVC模式:Model模型 View试图 Control控制器,是目前主流模式,被当作服务器软件入门基本模式学习和掌握,主流框架Struts 1/2 JSF Wicket基本都顺理成章支持MVC模式. ...

  9. 王垠:Lisp 已死,Lisp 万岁!

    王垠:Lisp 已死,Lisp 万岁!_IT新闻_博客园 王垠:Lisp 已死,Lisp 万岁!

随机推荐

  1. dede后台反应特别慢-转

    找到织梦后台管理目录下的/templets/index_body.htm文件 将第25行至第35行部分js代码注释掉. 就这么简单

  2. python字符串格式化 %操作符 {}操作符---总结

    Python字符串格式化 (%占位操作符) 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出.Python中内置有对字符串进行格式化的操作 %. 模板 格式化字 ...

  3. pyqt5消息框QMessageBox

    QMessageBox消息框有以下几种类型: QMessageBox.information 信息框   QMessageBox.question 问答框   QMessageBox.warning ...

  4. vim的命令集合

    命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令.启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并 ...

  5. oracle 主键应用序列和触发器实现自动增长

    oracle 主键自动增长 这几天搞Oracle,想让表的主键实现自动增长,查网络实现如下: create table simon_example ( id number(4) not null pr ...

  6. 职员时序安排lingo求解

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang !职员时序安排模型 题目: 一项工作一周七天都需要有人,每天所需的最少职工数为20,16,13,1 ...

  7. codeforces Ilya and Matrix

    http://codeforces.com/contest/313/problem/C #include <cstdio> #include <cstring> #includ ...

  8. 自制单片机之十三……时钟IC_DS1302

    在网上看了很久,发现初学者最有兴趣的就是DS1302时钟电路,也很自然,它是个做出来就让你觉得最实用的电路了,但实际上制做上并不简单,首先你要让你的显示部分(不管是数码管还是LCD)调试通过.然后把D ...

  9. 策略模式 - OK

    策略模式(Strategy):它定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化不会影响到使用算法的客户. 策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的 ...

  10. js深入研究之无法理解的js类代码,extend扩展

    <script type="text/javascript"> function Person(name) { this.name = name; } Person.p ...