linux中RPM包管理的27个DNF(Yum 分支)命令

为什么要用DNF替换Yum

由于Yum中许多长期存在的问题仍未得到解决,因此Yum包管理器已被DNF包管理器取代。这些问题包括性能差、内存占用过多、依赖解析速度变慢等。

DNF的安装

DNF在默认存储库中不可用RHEL/CentOS 7.然而,Fedora 22 附带了正式实施的 DNF。

安装DNFRHEL/CentOS系统,你需要先安装并启用epel-release存储库。

  1. # yum install epel-release
  2. OR
  3. # yum install epel-release -y

使用yum命令安装DNFepel-release存储库。

  1. # yum install dnf

1. 检查DNF版本

检查系统上安装的DNF版本。

  1. # dnf --version

2. 列出启用的DNF存储库

选项 repolist 使用 dnf 命令,将显示系统下所有启用的存储库。

  1. # dnf repolist

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

repolist all 将打印你系统下所有启用 / 禁用的存储库。

  1. # dnf repolist all

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

dnf list将列出 Linux 系统上所有存储库和已安装软件包中的所有可用软件包。

  1. # dnf list

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

虽然 dnf list 命令显示所有存储库中的所有可用 / 已安装包。但是,你可以选择使用选项 “仅列出已安装的软件包”list installed“ 如下所示。

  1. # dnf list installed

6. 使用DNF列出所有可用的包

list available 选项,将列出可从所有启用的存储库安装的所有软件包。

  1. # dnf list available

7. 使用DNF搜索包

你不知道要安装的软件包,在这种情况下,你可以使用 search 带有 dnf 命令的选项来搜索与单词或字符串匹配的包(比如 nano)。

  1. # dnf search nano

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

dnf 选项 provides 找到提供特定文件子包的包的名称。例如,如果你想查找在系统中提供/bin/bash

  1. # dnf provides /bin/bash

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

假设你想在系统上安装一个包之前知道它的信息,你可以使用 info 切换以获取有关包(例如 nano)的详细信息,如下所示。

  1. # dnf info nano

10. 使用DNF安装包

安装一个名为nano,只需运行以下命令,它将自动解析并安装包所需的所有依赖项nano.

  1. # dnf install nano

11. 使用DNF更新包

你只能更新一个特定的包(比如systemd) 并保持系统上的所有内容不变。

  1. # dnf update systemd

12. 使用DNF检查系统更新

检查安装到系统中的所有系统软件包的更新。

  1. # dnf check-update

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

你可以使用以下命令更新整个系统,包括所有已安装的软件包。

  1. # dnf update
  2. OR
  3. # dnf upgrade

14. 使用DNF删除包

删除或删除任何不需要的包(例如nano),你可以使用 remove或者erase 使用 dnf 命令切换以将其删除。

  1. # dnf remove nano
  2. OR
  3. # dnf erase nano

15. 使用DNF删除孤立包

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

  1. # dnf autoremove

16. 使用DNF删除缓存

很多时候我们会遇到过时的标头和未完成的事务,这会导致在执行 dnf 时出错。我们可以简单地通过执行来清除所有缓存的包和包含远程包信息的头文件。

  1. # dnf clean all

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

你可以获得任何特定 dnf 命令的帮助(例如clean) 只需执行以下命令即可。

  1. # dnf help clean

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

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

  1. # dnf help

19. 查看DNF的历史

你可以调用 dnf history 查看已执行的 dnf 命令列表。

  1. # dnf history

20. 列出所有组包

dnf grouplist 将打印所有可用或已安装的包,如果没有提及,它将列出所有已知组。

  1. # dnf grouplist

21. 使用DNF安装组包

安装一组捆绑在一起的包作为组包(比如Educational Software)

  1. # dnf groupinstall 'Educational Software'

22. 更新组包

让我们更新一个组包(比如Educational Software) 通过执行以下命令。

  1. # dnf groupupdate 'Educational Software'

23. 删除组包

我们可以删除组包(比如Educational Software) 作为。

  1. # dnf groupremove 'Educational Software'

24. 从特定存储库安装包

DNF可以安装任何特定的包(比如phpmyadmin) 来自 (epel) 镜像,

  1. # dnf --enablerepo=epel install phpmyadmin

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

dnf distro-sync 将提供必要的选项来将所有已安装的软件包同步到任何启用的存储库中可用的最新稳定版本。如果未选择任何软件包,则同步所有已安装的软件包。

  1. # dnf distro-sync

26. 重新安装一个包

dnf reinstall nano 将重新安装一个已经安装的包(比如nano)。

  1. # dnf reinstall nano

27. 降级软件包

downgrade选项会将指定的包(例如 acpid)降级到较低版本。

  1. # dnf downgrade acpid
样本输出
  1. Using metadata from Wed May 20 12:44:59 2015
  2. No match for available package: acpid-2.0.19-5.el7.x86_64
  3. Error: Nothing to do.

返回笔记列表
入门小站