DNF管理

DNF

新一代的RPM软件包管理器。DNF 发行日期是2015年5月11日,DNF 包管理器采 用Python 编写,发行许可为GPL v2,首先出如今Fedora 18 发行版中。在 RHEL 8.0 版本正式 取代了 YUM,DNF包管理器克服了YUM包管理器的一些瓶颈,提高了包括用户体验,内存占用, 依赖分析,运行速度等
注意:DNF 并未默认安装在 RHEL 或 CentOS 7系统中,可是 Fedora 22 已经默认使用 DNFphp

  • 配置文件:/etc/dnf/dnf.conf
  • 仓库文件:/etc/yum.repos.d/ *.repo
  • 日志: /var/log/dnf.rpm.log,/var/log/dnf.log

用法与yum一致

dnf --version
dnf repolist
dnf install httpd
dnf remove httpd
dnf clean all
dnf makecache
dnf list installed
dnf list available
dnf search nano
dnf history undo 1 缓存

安装DNF包管理器

  • 一、为了安装 DNF ,必须先安装并启用 epel-release 依赖
    yum install epel-release
    或者
    #yum install epel-release -y
    其实这里并无强制使用”-y”的理由,相反的,在不使用”-y”的状况下,用户能够在安装过程当中查看到底有哪些东西被安装进了系统。但对于没有这个需求的用户,可使用”-y”参数来自动安装全部东西。
  • 二、使用 epel-release 依赖中的 YUM 命令来安装 DNF 包。在系统中执行如下命令
    yum install dnf
  • 安装完成

经常使用命令示例

查看安装在系统中的DNF包管理器的版本
#dnf –version
DNF管理
查看系统中可用的 DNF 软件库
#dnf repolist
DNF管理
显示系统中可用和不可用的全部的 DNF 软件库
#dnf repolist all
DNF管理
列出全部RPM包
#dnf list
DNF管理
列出全部安装了的 RPM包
#dnf list installed
DNF管理
列出全部可供安装的RPM包
#dnf list available
DNF管理
搜索软件库中的 RPM 包:不知道想要安装的软件的准确名称时,能够用该命令来搜索软件包。须要在”search”参数后面键入软件的部分名称来搜索。(在本例中使用”nano”)
#dnf search nano
DNF管理
查找某一文件的提供者:想要查看是哪一个软件包提供了系统中的某一文件时,可使用这条命令。(在本例中,查找”/bin/bash”这个文件的提供者)
#dnf provides /bin/bash
DNF管理
查看软件包详情
#dnf info nano
DNF管理
安装软件包:系统将会自动安装对应的软件及其所需的全部依赖(在本例中,安装nano软件)
#dnf install nano
DNF管理
升级软件包(在本例中,升级”systemd”这一软件包)
#dnf update systemd
DNF管理
检查系统全部软件包的更新
#dnf check-update
DNF管理
升级全部系统软件包
#dnf update 或 # dnf upgrade
DNF管理
删除软件包(在本例删除”nano”这一软件包)
#dnf remove nano 或 #dnf erase nano
DNF管理
删除无用孤立的软件包
#dnf autoremovebash

DNF管理
删除缓存的无用软件包
#dnf clean all
DNF管理
获取有关某条命令的使用帮助(本例中获取有关命令”clean”的使用帮助)
#dnf help clean
DNF管理
查看全部的DNF命令及其用途
#dnf help
DNF管理
查看DNF命令的执行历史
#dnf history
DNF管理
查看全部的软件包组
#dnf grouplist
DNF管理
安装一个软件包组(本例中,安装”Educational Software”这个软件包组)
#dnf groupinstall ‘Educational Software’
DNF管理
升级一个软件包组中的软件包(本例中,升级”Educational Software”这个软件包组中的软件)
#dnf groupupdate ‘Educational Software’
DNF管理
删除一个软件包组(本例中,删除”Educational Software”这个软件包组)
#dnf groupremove ‘Educational Software’
DNF管理
从特定的软件包库安装特定的软件(本例中从软件包库 epel 中安装 phpmyadmin 软件包)
#dnf –enablerepo=epel install phpmyadmin
更新软件包到最新的稳定发行版
#dnf distro-sync
从新安装特定软件包(本例中,从新安装”nano”这个软件包)
#dnf reinstall nano
DNF管理
回滚某个特定软件的版本(本例中,下降”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 并无按照我指望的那样降级指定的软件(“acpid”)。该问题已经上报ide

相关文章
相关标签/搜索