DNF 并未默认安装在 RHEL 或 CentOS 7系统中。
1、为了安装 DNF ,您必须先安装并启用 epel-release 依赖。
在系统中执行以下命令:
# yum install epel-release
或者
# yum install epel-release -y
在系统中执行以下命令:
# yum install epel-release
或者
# yum install epel-release -y
2、使用 epel-release 依赖中的 YUM 命令来安装 DNF 包。在系统中执行以下命令:
# yum install dnf
# yum install dnf
DNF常用命令
检查并升级可用软件包:
$ dnf update
检查并升级可用软件包:
$ dnf update
删除缓存:
$dnf clean all
$dnf clean all
列出可用的软件源:
$ dnf repolist
$ dnf repolist
搜索软件:
$ dnf search $package
$ dnf search $package
安装软件:
$ dnf install $package
$ dnf install $package
升级软件包:
$ dnf update $package
$ dnf update $package
删除软件包:
$ dnf remove $package
$ dnf remove $package
查看更多命令:
$ dnf help
$ man dnf
$ man dnf
1.查看 DNF 包管理器版本
用处:该命令用于查看安装在您系统中的 DNF 包管理器的版本
# dnf –version
用处:该命令用于查看安装在您系统中的 DNF 包管理器的版本
# dnf –version
2.查看系统中可用的 DNF 软件库
用处:该命令用于显示系统中可用的 DNF 软件库
# dnf repolist
用处:该命令用于显示系统中可用的 DNF 软件库
# dnf repolist
3.查看系统中可用和不可用的所有的 DNF 软件库
用处:该命令用于显示系统中可用和不可用的所有的 DNF 软件库
# dnf repolist all
用处:该命令用于显示系统中可用和不可用的所有的 DNF 软件库
# dnf repolist all
4.列出所有 RPM 包
用处:该命令用于列出用户系统上的所有来自软件库的可用软件包和所有已经安装在系统上的软件包
# dnf list
用处:该命令用于列出用户系统上的所有来自软件库的可用软件包和所有已经安装在系统上的软件包
# dnf list
5.列出所有安装了的 RPM 包
用处:该命令用于列出所有安装了的 RPM 包
# dnf list installed
用处:该命令用于列出所有安装了的 RPM 包
# dnf list installed
6.列出所有可供安装的 RPM 包
用处:该命令用于列出来自所有可用软件库的可供安装的软件包
# dnf list available
用处:该命令用于列出来自所有可用软件库的可供安装的软件包
# dnf list available
7.搜索软件库中的 RPM 包
用处:当你不知道你想要安装的软件的准确名称时,你可以用该命令来搜索软件包。你需要在”search”参数后面键入软件的部分名称来搜索。(在本例中我们使用”nano”)
# dnf search nano
# dnf search nano
8.查找某一文件的提供者
用处:当你想要查看是哪个软件包提供了系统中的某一文件时,你可以使用这条命令。(在本例中,我们将查找”/bin/bash”这个文件的提供者)
# dnf provides /bin/bash
用处:当你想要查看是哪个软件包提供了系统中的某一文件时,你可以使用这条命令。(在本例中,我们将查找”/bin/bash”这个文件的提供者)
# dnf provides /bin/bash
9.查看软件包详情
用处:当你想在安装某一个软件包之前查看它的详细信息时,这条命令可以帮到你。(在本例中,我们将查看”nano”这一软件包的详细信息)
# dnf info nano
用处:当你想在安装某一个软件包之前查看它的详细信息时,这条命令可以帮到你。(在本例中,我们将查看”nano”这一软件包的详细信息)
# dnf info nano
10安装软件包
用处:使用该命令,系统将会自动安装对应的软件及其所需的所有依赖(在本例中,我们将用该命令安装nano软件)
# dnf install nano
用处:使用该命令,系统将会自动安装对应的软件及其所需的所有依赖(在本例中,我们将用该命令安装nano软件)
# dnf install nano
11.升级软件包
用处:该命令用于升级制定软件包(在本例中,我们将用命令升级”systemd”这一软件包)
# dnf update systemd
用处:该命令用于升级制定软件包(在本例中,我们将用命令升级”systemd”这一软件包)
# dnf update systemd
12.检查系统软件包的更新
用处:该命令用于检查系统中所有软件包的更新
# dnf check-update
用处:该命令用于检查系统中所有软件包的更新
# dnf check-update
13.升级所有系统软件包
用处:该命令用于升级系统中所有有可用升级的软件包
# dnf update 或 # dnf upgrade
用处:该命令用于升级系统中所有有可用升级的软件包
# dnf update 或 # dnf upgrade
14.删除软件包
用处:删除系统中指定的软件包(在本例中我们将使用命令删除”nano”这一软件包)
# dnf remove nano 或 # dnf erase nano
用处:删除系统中指定的软件包(在本例中我们将使用命令删除”nano”这一软件包)
# dnf remove nano 或 # dnf erase nano
15.删除无用孤立的软件包
用处:当没有软件再依赖它们时,某一些用于解决特定软件依赖的软件包将会变得没有存在的意义,该命令就是用来自动移除这些没用的孤立软件包。
# dnf autoremove
用处:当没有软件再依赖它们时,某一些用于解决特定软件依赖的软件包将会变得没有存在的意义,该命令就是用来自动移除这些没用的孤立软件包。
# dnf autoremove
16.删除缓存的无用软件包
用处:在使用 DNF 的过程中,会因为各种原因在系统中残留各种过时的文件和未完成的编译工程。我们可以使用该命令来删除这些没用的垃圾文件。
# dnf clean all
用处:在使用 DNF 的过程中,会因为各种原因在系统中残留各种过时的文件和未完成的编译工程。我们可以使用该命令来删除这些没用的垃圾文件。
# dnf clean all
17.获取有关某条命令的使用帮助
用处:该命令用于获取有关某条命令的使用帮助(包括可用于该命令的参数和该命令的用途说明)(本例中我们将使用命令获取有关命令”clean”的使用帮助)
# dnf help clean
用处:该命令用于获取有关某条命令的使用帮助(包括可用于该命令的参数和该命令的用途说明)(本例中我们将使用命令获取有关命令”clean”的使用帮助)
# dnf help clean
18.查看所有的 DNF 命令及其用途
用处:该命令用于列出所有的 DNF 命令及其用途
# dnf help
用处:该命令用于列出所有的 DNF 命令及其用途
# dnf help
19.查看 DNF 命令的执行历史
用处:您可以使用该命令来查看您系统上 DNF 命令的执行历史。通过这个手段您可以知道在自您使用 DNF 开始有什么软件被安装和卸载。
# dnf history
用处:您可以使用该命令来查看您系统上 DNF 命令的执行历史。通过这个手段您可以知道在自您使用 DNF 开始有什么软件被安装和卸载。
# dnf history
20.查看所有的软件包组
用处:该命令用于列出所有的软件包组
# dnf grouplist
用处:该命令用于列出所有的软件包组
# dnf grouplist
21.安装一个软件包组
用处:该命令用于安装一个软件包组(本例中,我们将用命令安装”Educational Software”这个软件包组)
# dnf groupinstall ‘Educational Software’
用处:该命令用于安装一个软件包组(本例中,我们将用命令安装”Educational Software”这个软件包组)
# dnf groupinstall ‘Educational Software’
22.升级一个软件包组中的软件包
用处:该命令用于升级一个软件包组中的软件包(本例中,我们将用命令升级”Educational Software”这个软件包组中的软件)
# dnf groupupdate ‘Educational Software’
用处:该命令用于升级一个软件包组中的软件包(本例中,我们将用命令升级”Educational Software”这个软件包组中的软件)
# dnf groupupdate ‘Educational Software’
23.删除一个软件包组
用处:该命令用于删除一个软件包组(本例中,我们将用命令删除”Educational Software”这个软件包组)
# dnf groupremove ‘Educational Software’
用处:该命令用于删除一个软件包组(本例中,我们将用命令删除”Educational Software”这个软件包组)
# dnf groupremove ‘Educational Software’
24.从特定的软件包库安装特定的软件
用处:该命令用于从特定的软件包库安装特定的软件(本例中我们将使用命令从软件包库 epel 中安装 phpmyadmin 软件包)
# dnf –enablerepo=epel install phpmyadmin
用处:该命令用于从特定的软件包库安装特定的软件(本例中我们将使用命令从软件包库 epel 中安装 phpmyadmin 软件包)
# dnf –enablerepo=epel install phpmyadmin
25.更新软件包到最新的稳定发行版
用处:该命令可以通过所有可用的软件源将已经安装的所有软件包更新到最新的稳定发行版
# dnf distro-sync
用处:该命令可以通过所有可用的软件源将已经安装的所有软件包更新到最新的稳定发行版
# dnf distro-sync
26.重新安装特定软件包
用处:该命令用于重新安装特定软件包(本例中,我们将使用命令重新安装”nano”这个软件包)
# dnf reinstall nano
用处:该命令用于重新安装特定软件包(本例中,我们将使用命令重新安装”nano”这个软件包)
# dnf reinstall nano
27.回滚某个特定软件的版本
用处:该命令用于降低特定软件包的版本(如果可能的话)(本例中,我们将使用命令降低”acpid”这个软件包的版本)
# dnf downgrade acpid
用处:该命令用于降低特定软件包的版本(如果可能的话)(本例中,我们将使用命令降低”acpid”这个软件包的版本)
# dnf downgrade acpid