在Linux中RPM软件包管理的27个'DNF'(Yum Fork)命令

DNF是基于RPM的分发版的下一代包管理器,它首次在Fedora 18中引入,在最近的版本中被替换为YUM实用程序

DNF又名Dandified YUM是基于RPM的分发下一代包管理器。 这是第一次了Fedora 18推出,它已经取代了yum工具在最近发布Fedora 22Linux DNF命令示例 DNF旨在改善YUM即的瓶颈,性能,内存使用实例,解决依赖,速度和许多其他因素。 DNF使用RPM,libsolv和hawkey库来执行包管理。虽然它不是每次安装在CentOS和RHEL 7,你可以yum,dnf,并与yum一起使用。 您可以在这里阅读关于DNF的更多信息:
  1. 用DNF替代Yum的原因
DNF最新的稳定版本是1.0(在后写作的时候),它发布于2015年5月11日 ,它(和DNF所有以前的版本)主要是用Python编写的,并根据GPL v2协议被释放。

安装DNF

DNF在RHEL / CentOS 7的默认存储库不可用。但是Fedora的22艘与DNF正式实施。 要在RHEL / CentOS的系统上安装DNF,你需要先安装并启用EPEL释放存储库。
# yum install epel-release
OR
# yum install epel-release -y
虽然不是道德的使用'-y'使用yum的建议,看看有什么被安装在系统中。然而,如果这不要紧,你可以使用“-y”与yum自动安装一切自动无需用户干预。 接下来,用yum命令从EPEL释放库安装DNF包。
# yum install dnf
安装成功后DNF,它的时间向你展示DNF命令 27实际应用举例,将帮助您轻松有效地管理基于RPM的分发包。

1.检查DNF版本

检查系统上安装的DNF的版本。
# dnf --version
检查DNF版本

2.列出启用的DNF存储库

选项“repolist”与DNF的命令,将显示您的系统下的所有启用的存储库。
# dnf repolist
检查所有启用的存储库

3.列出所有已启用和已禁用的DNF存储库

选项“repolist所有 ”将打印系统下的所有启用/禁用库。
# dnf repolist all
列出所有启用/禁用的存储库

4.使用DNF列出所有可用和已安装的软件包

命令“ DNF名单 ”将列出你的Linux系统上,从所有库中的所有可用的软件包和安装的软件包。
# dnf list
列出使用DNF的所有包

5.使用DNF列出所有已安装的软件包

而“ DNF列表 ”命令显示所有可用/安装了所有的仓库包。 但是,你要只列出使用如下图所示的选项“ 装机清单 ”已安装的软件包的选项。
# dnf list installed
列出所有安装的软件包

6.使用DNF列出所有可用软件包

同样,“ 可用列表 ”选项,将列出所有可用的从所有启用的仓库安装的软件包。
# dnf list available
使用DNF列出可用软件包

7.使用DNF搜索软件包

如果柜面,你已经没有任何有关您要安装的软件包的想法,在这种情况下,你可以使用“ 搜索 ”与DNF命令选项来搜索单词或字符串(说nano)相匹配的包。
# dnf search nano
按字搜索包

8.看什么提供文件/子包?

DNF的选项“ 规定 ”发现,提供特定文件/子包包的名称。 例如,如果您想查找提供您的系统上“/斌/ bash的 ”?
# dnf provides /bin/bash
查找文件子包

9.使用DNF获取软件包的详细信息

让我们假设你想在系统上安装之前知道包的信息,您可以使用“ 信息 ”开关,以获取有关包的详细信息(比如nano),如下。
# dnf info nano
使用DNF检查软件包信息

10.使用DNF安装软件包

要安装一个叫做nano包,只需运行下面的命令,它会自动解决并安装所有需要的依赖的包nano
# dnf install nano
使用DNF安装软件包

11.使用DNF更新包

你可以只更新特定的包(比如systemd),并保持系统不变的一切。
# dnf update systemd
更新特定软件包

12.使用DNF检查系统更新

检查安装到系统中的所有系统软件包的更新。
# dnf check-update
检查系统更新

13.使用DNF更新所有系统软件包

您可以使用以下命令更新整个系统,包括所有已安装的软件包。
# dnf update
OR
# dnf upgrade
更新系统

14.使用DNF删除/删除软件包

要删除或删除任何不必要的包(说nano ),你可以使用“ 删除 ”或“ 擦除 ”与DNF命令切换到将其删除。
# dnf remove nano
OR
# dnf erase nano
在Linux中删除软件包

15.使用DNF删除孤立包

如果没有被其他应用程序使用,那些被安装以满足依赖性的软件包可能是无用的。要删除这些孤立软件包,请执行以下命令。
# dnf autoremove
删除孤立包

16.使用DNF删除缓存包

很多时候,我们遇到过时的标头和未完成的事务,导致执行dnf时出错。我们可以通过执行来清理所有缓存的包和包含远程包信息的头。
# dnf clean all
删除DNF缓存

17.获取特定DNF命令的帮助

您可以得到任何具体的DNF命令的帮助(比如干净的 )只是执行下面的命令。
# dnf help clean
获取DNF命令帮助

18.列出所有DNF命令和选项

要列出所有可用的dnf命令和选项的帮助,只需键入。
# dnf help
获取帮助DNF选项

19.查看DNF的历史

您可以调用dnf history查看已执行的dnf命令的列表。这样,您可以知道安装/删除的时间戳。
# dnf history
检查DNF历史

20.列出所有组包

命令“ DNFGROUPLIST”将打印所有可用的或已安装的软件包,如果没有被提及,它会列出所有已知的组。
# dnf grouplist
列出所有组包

21.使用DNF安装组软件包

要安装捆绑在一起作为组封装包的组(比如教育软件 ),简称为。
# dnf groupinstall 'Educational Software'
安装组包

22.更新组包

让我们通过执行下面的命令来更新组封装(比如教育软件 )。
# dnf groupupdate 'Educational Software'
更新组包

23.删除组包

我们可以删除组包(比如教育软件 )作为。
# dnf groupremove 'Educational Software'
删除组包

24.从特定存储库安装软件包

DNF使得它可以安装从回购(EPEL)任何具体的包(比如phpMyAdmin的 )一样简单,
# dnf --enablerepo=epel install phpmyadmin
从特定Repo安装包

25.将已安装的软件包同步到稳定版本

命令“ DNF发行同步 ”,将提供必要的选项给所有已安装的软件包同步到最新的稳定可以从任何支持资源库版本。如果未选择任何软件包,则所有已安装的软件包都将同步。
# dnf distro-sync
将软件包同步到稳定版本

26.重新安装软件包

命令“ DNF重新安装nano ”将重新安装已安装的软件包(说nano )。
# dnf reinstall nano
重新安装软件包

27.降级软件包

如果可能,选项“降级”将降级命名包(说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不降级的包。它也被报告为错误。

结论

DNF是艺术软件包管理YUM月底的上状态。它倾向于自动进行大量的处理,这是不会被许多经验丰富的Linux系统管理员,我相信。作为示例:
  1. --skip-broken不被认可的DNF,也没有办法。
  2. 有没有像“resolvedep'命令但是你可能会遇到DNF提供。
  3. 有没有'deplist“命令来查找包的依赖。
  4. 您排除了repo,意味着排除适用于所有操作,不像yum,只有在安装和更新时排除这些repos。
几个Linux用户不喜欢Linux生态系统的移动方式。首先Systemd删除init系统现在DNF迟早会在Fedora的22后来在RHEL和CentOS被替换YUM。 你有什么感想?是分布式的,整个Linux生态系统不重视它的用户和违背他们的意志。也正是在IT行业常说的- “ 为什么要修复,如果不破?”,二者的init系统V坏了,也不YUM。 目前为止就这样了。请在下面的评论中告诉我您的宝贵想法。喜欢和分享我们,并帮助我们传播。

分享按钮