码迷,mamicode.com
首页 > 其他好文 > 详细

DNF管理

时间:2019-10-19 09:16:18      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:pre   执行   自动   显示   httpd   plist   downgrade   repo   software   

DNF

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

  • 配置文件:/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包管理器

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

常用命令示例

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

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

DNF管理

标签:pre   执行   自动   显示   httpd   plist   downgrade   repo   software   

原文地址:https://blog.51cto.com/14234291/2443758

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!