DNF是新一代的RPM软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近,它取代了YUM,正式成为 Fedora 22 的包管理器。

DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。DNF使用 RPM, libsolv 和 hawkey 库进行包管理操作。尽管它没有预装在 CentOS 和 RHEL 7 中,但你可以在使用 YUM 的同时使用 DNF 。你可以在这里获得关于 DNF 的更多知识:《 DNF 代替 YUM ,你所不知道的缘由》

DNF 的最新稳定发行版版本号是 1.0,发行日期是2015年5月11日。 这一版本的额 DNF 包管理器(包括在他之前的所有版本) 都大部分采用 Python 编写,发行许可为GPL v2.

安装 DNF 包管理器

DNF 并未默认安装在 RHEL 或 CentOS 7系统中,但是 Fedora 22 已经默认使用 DNF .

1、为了安装 DNF ,您必须先安装并启用 epel-release 依赖。

在系统中执行以下命令:# yum install epel-release

或者# yum install epel-release -y

其实这里并没有强制使用”-y”的理由,相反的,在不使用”-y”的情况下,用户可以在安装过程中查看到底有哪些东西被安装进了系统。但对于没有这个需求的用户,您可以在 YUM 中使用”-y”参数来自动安装所有东西。

2、使用 epel-release 依赖中的 YUM 命令来安装 DNF 包。在系统中执行以下命令:# yum install dnf

然后, DNF 包管理器就被成功的安装到你的系统中了。接下来,是时候开始我们的教程了!在这个教程中,您将会学到27个用于 DNF 包管理器的命令。使用这些命令,你可以方便有效的管理您系统中的 RPM 软件包。现在,让我们开始学习 DNF 包管理器的27条常用命令吧!

查看 DNF 包管理器版本

用处:该命令用于查看安装在您系统中的 DNF 包管理器的版本# dnf –version

查看系统中可用的 DNF 软件库

用处:该命令用于显示系统中可用的 DNF 软件库# dnf repolist

查看系统中可用和不可用的所有的 DNF 软件库

用处:该命令用于显示系统中可用和不可用的所有的 DNF 软件库# dnf repolist all

列出所有 RPM 包

用处:该命令用于列出用户系统上的所有来自软件库的可用软件包和所有已经安装在系统上的软件包# dnf list

列出所有安装了的 RPM 包

用处:该命令用于列出所有安装了的 RPM 包# dnf list installed

列出所有可供安装的 RPM 包

用处:该命令用于列出来自所有可用软件库的可供安装的软件包# dnf list available

搜索软件库中的 RPM 包

用处:当你不知道你想要安装的软件的准确名称时,你可以用该命令来搜索软件包。你需要在”search”参数后面键入软件的部分名称来搜索。(在本例中我们使用”nano”)# dnf search nano

查找某一文件的提供者

用处:当你想要查看是哪个软件包提供了系统中的某一文件时,你可以使用这条命令。(在本例中,我们将查找”/bin/bash”这个文件的提供者)# dnf provides /bin/bash

查看软件包详情

用处:当你想在安装某一个软件包之前查看它的详细信息时,这条命令可以帮到你。(在本例中,我们将查看”nano”这一软件包的详细信息)# dnf info nano

安装软件包

用处:使用该命令,系统将会自动安装对应的软件及其所需的所有依赖(在本例中,我们将用该命令安装nano软件)# dnf install nano

升级软件包

用处:该命令用于升级制定软件包(在本例中,我们将用命令升级”systemd”这一软件包)# dnf update systemd

检查系统软件包的更新

用处:该命令用于检查系统中所有软件包的更新# dnf check-update

升级所有系统软件包

用处:该命令用于升级系统中所有有可用升级的软件包# dnf update 或 # dnf upgrade

删除软件包

用处:删除系统中指定的软件包(在本例中我们将使用命令删除”nano”这一软件包)# dnf remove nano 或 # dnf erase nano

删除无用孤立的软件包

用处:当没有软件再依赖它们时,某一些用于解决特定软件依赖的软件包将会变得没有存在的意义,该命令就是用来自动移除这些没用的孤立软件包。# dnf autoremove

删除缓存的无用软件包

用处:在使用 DNF 的过程中,会因为各种原因在系统中残留各种过时的文件和未完成的编译工程。我们可以使用该命令来删除这些没用的垃圾文件。# dnf clean all

获取有关某条命令的使用帮助

用处:该命令用于获取有关某条命令的使用帮助(包括可用于该命令的参数和该命令的用途说明)(本例中我们将使用命令获取有关命令”clean”的使用帮助)# dnf help clean

查看所有的 DNF 命令及其用途

用处:该命令用于列出所有的 DNF 命令及其用途# dnf help

查看 DNF 命令的执行历史

用处:您可以使用该命令来查看您系统上 DNF 命令的执行历史。通过这个手段您可以知道在自您使用 DNF 开始有什么软件被安装和卸载。# dnf history

查看所有的软件包组

用处:该命令用于列出所有的软件包组# dnf grouplist

安装一个软件包组

用处:该命令用于安装一个软件包组(本例中,我们将用命令安装”Educational Software”这个软件包组)# dnf groupinstall ‘Educational Software’

升级一个软件包组中的软件包

用处:该命令用于升级一个软件包组中的软件包(本例中,我们将用命令升级”Educational Software”这个软件包组中的软件)# dnf groupupdate ‘Educational Software’

删除一个软件包组

用处:该命令用于删除一个软件包组(本例中,我们将用命令删除”Educational Software”这个软件包组)# dnf groupremove ‘Educational Software’

从特定的软件包库安装特定的软件

用处:该命令用于从特定的软件包库安装特定的软件(本例中我们将使用命令从软件包库 epel 中安装 phpmyadmin 软件包)# dnf –enablerepo=epel install phpmyadmin

更新软件包到最新的稳定发行版

用处:该命令可以通过所有可用的软件源将已经安装的所有软件包更新到最新的稳定发行版# dnf distro-sync

重新安装特定软件包

用处:该命令用于重新安装特定软件包(本例中,我们将使用命令重新安装”nano”这个软件包)# dnf reinstall nano

回滚某个特定软件的版本

用处:该命令用于降低特定软件包的版本(如果可能的话)(本例中,我们将使用命令降低”acpid”这个软件包的版本)# dnf downgrade acpid

样例输出:Using metadata from Wed May 20 12:44:59 2015

No match for available package: acpid-2.0.19-5.el7.x86_64

Error: Nothing to do.

原作者注:在执行这条命令的时候, DNF 并没有按照我期望的那样降级指定的软件(“acpid”)。该问题已经上报。

总结

DNF 包管理器作为 YUM 包管理器的升级替代品,它能自动完成更多的操作。但在我看来,正因如此,所以 DNF 包管理器不会太受那些经验老道的 Linux 系统管理者的欢迎。举例如下:在 DNF 中没有 –skip-broken 命令,并且没有替代命令供选择。

在 DNF 中没有判断哪个包提供了指定依赖的 resolvedep 命令。

在 DNF 中没有用来列出某个软件依赖包的 deplist 命令。

当你在 DNF 中排除了某个软件库,那么该操作将会影响到你之后所有的操作,不像在 YUM 下那样,你的排除操作只会咋升级和安装软件时才起作用。

dnf全部使用_dnf命令_Linux dnf 命令用法详解:新一代的RPM软件包管理器相关推荐

  1. Linux命令之 DNF -- 新一代的 RPM 软件包管理器

    文章目录 一.命令介绍 二.安装 DNF 三.DNF 命令 (一)主要命令 1. 安装.升级和删除软件包 2. 查询和检查软件包 3. 执行其它功能 (二)插件命令 四.选项参数 五.命令示例 (一) ...

  2. linux架设DNF服务器,使用linux的dnf命令新一代的RPM软件包管理器

    使用linux的dnf命令新一代的RPM软件包管理器 发布时间:2020-07-08 11:00:25 来源:亿速云 阅读:131 作者:清晨 栏目:服务器 这篇文章将为大家详细讲解有关使用linux ...

  3. dnf 新一代的RPM软件包管理器

    补充说明 DNF 是新一代的rpm软件包管理器.他首先出现在 Fedora 18 这个发行版中.而最近,它取代了yum,正式成为 Fedora 22 的包管理器. DNF包管理器克服了YUM包管理器的 ...

  4. RPM软件包管理器dnf

    dnf软件包管理器用法收藏 新一代的RPM软件包管理器 补充说明 DNF 是新一代的rpm软件包管理器.他首先出现在 Fedora 18 这个发行版中.而最近,它取代了yum,正式成为 Fedora ...

  5. dnf新一代RPM软件包管理器

    转载: https://wangchujiang.com/linux-command/c/dnf.html 文章目录 dnf 安装 DNF 包管理器 查看 DNF 包管理器版本 查看系统中可用的 DN ...

  6. linux cp -r 参数,Linux系统中cp命令的参数及用法详解

    Linux系统中cp命令主要是用来复制文件或者目录.下面由学习啦小编为大家整理了Linux系统中cp命令的参数及用法详解的相关知识,希望对大家有帮助! Linux系统中cp命令的参数及用法详解:参数说 ...

  7. linux中替换命令详解,linux中sed命令字符串替换的用法详解

    Linux系统中sed命令可以将字符串批量替换,省去了很多麻烦,下面由学习啦小编为大家整理了linux系统中sed命令字符串替换的用法详解,希望对大家有帮助! linux中sed命令字符串替换的用法详 ...

  8. npm命令--安装依赖包--用法/详解

    原文网址:npm命令--安装依赖包--用法/详解_IT利刃出鞘的博客-CSDN博客 简介 本文介绍npm如何安装依赖包. 用法 命令 作用 详述 npm install <pkg> //同 ...

  9. java写dnf外掛_dnf卡盟_Java的泛型详解(一)

    Java实现DDD中UnitOfWorkdnf卡盟 Java的泛型详解 泛型的利益 编写的代码可以被差别类型的工具所重用. 由于上面的一个优点,泛型也可以削减代码的编写. 泛型的使用 简朴泛型类 pu ...

最新文章

  1. python【数据结构与算法】二分模板
  2. React-Router面试题汇总
  3. MongoDB 如何使用内存?为什么内存满了?
  4. 快速锁屏电脑快捷键_电脑小技巧
  5. spring cloud config-配置中心
  6. 基于Nginx的Wesocket负载均衡
  7. python写股票指标_一文看懂KDJ指标及Python实现
  8. iOS底层探索之Runtime(二): objc_msgSend汇编快速查找分析
  9. Open Images Dataset Detection Labels(openimage 检测类别的中文翻译)
  10. 程序员要不要懂底层原理
  11. IDEA终端光标太粗怎么设置?及操作技巧
  12. 股权的秘密:如何把握公司的控制权
  13. 根据拼音检索数据的方法
  14. Consul Consensus Protocol
  15. 用MyEclipse开发第一个Struts程序
  16. 旋转角度如何知道是顺时针还是逆时针旋转?(仅供参考,更靠谱的是旋转轴到z轴正半轴上)
  17. 用eclipse配置hibernate的hbm.xml文件时遇到的一些问题
  18. 红帽张先民博士:开源驱动企业数字化转型
  19. 扫清Android面试障碍--面试前的准备
  20. 国产蓝牙耳机什么牌子性价比高?盘点口碑好的国产蓝牙耳机

热门文章

  1. ​高效开发 | 开发周期可比同行业缩短60%,LuatOS公网对讲机方案
  2. 2023北京智能电网展览会
  3. 六种主流身份验证方法
  4. 将CAD模型通过SolidWorks导出机器人URDF文件(基于innfos六轴机械臂)
  5. slurm作业调度系统与天河二号的基本命令(新手入门, 以gs和vasp为例)
  6. 昨天晚上,收到了一封钓鱼邮件!
  7. npm 依赖?不熟知的 optionalDependencies(可选依赖项)
  8. OpenBox:软件定义时间敏感网络系统全家桶
  9. 如何获取股票期货的实时行情数据和历史行情数据?
  10. 王者荣耀cpu测试软件,你的手机能否玩王者荣耀,主流处理器新版王者荣耀测试...