命令介绍DNF(DandifiedYum)是新一代的RPM包管理器。DNF包管理器克服了YUM包管理器的一些瓶颈,在用户体验、内存占用、依赖分析、运行速度等诸多方面进行了提升。DNF使用RPM、libsolv和hawkey库进行包管理操作,Fedora22已经默认使用DNF。[root@centos7~]#dnf-bash:dnf:commandnotfound#CentOS安装#安装epel-release依赖:[root@centos7~]#yuminstallepel-release#安装DNF包:[root@centos7~]#yuminstalldnf配置文件所在目录:/etc/dnf/dnf.conf为什么要用DNF而不用Yum?主要原因有以下三个:Yum没有API文档。这意味着开发人员需要做更多的工作。Yum开发人员需要检查Yum的代码库来编写调用函数,这使得开发速度很慢。Fedora会过渡到Python3,但是Yum没有这个能力,DNF可以同时使用Python2和Python3环境。长期以来,依赖解析一直是Fedora包管理的致命弱点。DNF使用基于SAT的解决方案来解决依赖性问题,类似于SUSE和OpenSUSE的Zypper。语法格式dnf[options][command][package...]optiondescription#与YUM基本一致,少数用法不同--version#查看DNF包管理器版本help#查看所有DNF命令及其使用help#获取命令帮助历史#查看DNF命令的执行历史repolist#查看系统中可用的DNF软件库search#在软件库listinstalled#ListallinstalledRPMpackageslistavailable#ListallinstallableRPMpackagesinfo#查看软件包详细信息provides#查找文件提供者install#安装软件包及其所有依赖update#升级软件包remove#删除软件包reinstall#重新安装特定的软件包distro-sync#更新软件包到最新稳定版check-update#检查系统更新中所有软件包的更新#升级所有系统软件包cleanall#删除缓存的无用软件package应用示例DNF安装、卸载[root@centos7~]#dnfinstallpackage[root@centos7~]#dnfremovepackage#upgradesoftware[root@centos7~]#dnfupdate#升级系统[root@centos7~]#dnfupgrade#ClearRPMpackagecache[root@centos7~]#dnfcleanpackages查看dnf版本:[root@centos7~]#dnf--version4.0.9Installed:dnf-0:4.0.9.2-2.el7_9.noarchatMon2021年3月29日09:58:48AMST内置:CentOSBuildSystem于2021年4月7日星期三03:52:38PMEST安装:rpm-0:4.11.3-43.el7.x86_64于2020年8月20日星期四02:美国东部时间下午49:31建成:CentOSBuildSystem于2020年4月1日星期三美国东部时间上午04:21:52