1. 简介
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.
2. 安装
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 包管理器就被成功的安装到你的系统中了
3. 常用命令
- 查看 DNF 包管理器版本
dnf –version
- 查看系统中可用的 DNF 软件库
dnf repolist
- 查看系统中可用和不可用的所有的 DNF 软件库
dnf repolist all
- 列出所有 RPM 包
dnf list
- 列出所有安装了的 RPM 包
dnf list installed
- 列出所有可供安装的 RPM 包
dnf list available
- 搜索软件库中的 RPM 包
dnf search nano
- 查找某一文件的提供者
dnf provides /bin/bash
- 查看软件包详情
dnf info nano
- 安装软件包
dnf install nano
- 升级软件包
dnf update systemd
- 检查系统软件包的更新
dnf check-update
- 升级所有系统软件包
dnf update 或 # dnf upgrade
- 删除软件包
dnf remove nano 或 # dnf erase nano
- 删除无用孤立的软件包
dnf autoremove
- 删除缓存的无用软件包
dnf clean all
- 获取有关某条命令的使用帮助
dnf help clean
- 查看所有的 DNF 命令及其用途
dnf help
- 查看 DNF 命令的执行历史
dnf grouplist
- 安装一个软件包组
dnf groupinstall ‘Educational Software’
- 升级一个软件包组中的软件包
dnf groupupdate ‘Educational Software’
- 删除一个软件包组
dnf groupremove ‘Educational Software’
- 从特定的软件包库安装特定的软件
dnf –enablerepo=epel install phpmyadmin
- 更新软件包到最新的稳定发行版
dnf distro-sync
- 重新安装特定软件包
dnf reinstall nano
- 回滚某个特定软件的版本
dnf downgrade acpid