Linux(17)——使用 DNF 安装和更新软件包

目录

一、使用 DNF 管理软件包:

1、 DNF 查找软件:

2、DNF 安装软件:

3、DNF 删除软件:

二、使用 DNF 管理软件包组:

1、DNF 显示组信息:

2、DNF 安装组:

三、使用 DNF 查看事务历史记录:

1、存储 :

2、dnf history:

四、BaseOS 和 AppStream:

1、BaseOS:

2、 Application Stream:

3、通过 DNF 管理模块:

五、DNF 软件存储库:

1、启用红帽软件存储库:

2、本地软件仓库:


        上篇文章介绍的 rpm 命令可以用于安装软件包,但不可与软件包存储库一起使用,也不能解决多个源的依赖关系。( RPM 文章点此转跳:https://blog.csdn.net/m0_68756914/article/details/144826175 )

        而本篇文章介绍的 DNF ( Dandified YUM )改进了基于 RPM 的软件安装和更新。借助 dnf 命令,我们可以查找、安装、更新、删除以及获取有关软件包及其依赖项的信息。

一、使用 DNF 管理软件包:

        DNF 取代了 YUM,作为 RHEL 9 中的软件包管理器。DNF 命令在功能上与 YUM 命令相同。同时,出于兼容性考虑,YUM 命令依然作为 DNF 的符号链接而存在。

1、 DNF 查找软件:

(1)dnf list

        dnf list 命令可显示已安装可用的软件包。

注:dnf help 命令可显示用法信息。

(2)dnf search:

        dnf search KEYWORD 或者 dnf search all KEYWORD 命令列出按名称、摘要字段和描述字段中根据关键字查找到的软件包。

(3)dnf into:

        dnf info 后加软件包名可查看软件包的详细信息,包括安装所需的磁盘空间。

(4)dnf provides:

        dnf provides 后加路径名可显示指定路径名匹配软件包

2、DNF 安装软件:

(1)dnf install:

        dnf install 后加软件包名可获取并安装软件包,包括所有依赖项。

(2)dnf update:

        dnf update 加软件包名升级安装指定软件包的最新版本,包括所有依赖项,如未指定软件包名称,则安装所有更新。

注:1)内核升级可以通过 dnf update kernel 实现,而且会有多个内核共存。

       2)dnf list kernel 命令可列出所有已安装可用的内核。

       3)uname 命令可查看当前运行的内核。其中 -r 选项仅显示内核的版本和发行版本;-a 可选项显示内核发行版和其他信息。

3、DNF 删除软件:

        dnf remove 加软件包名删除安装的软件包,包括所有受支持的软件包。

二、使用 DNF 管理软件包组:

        dnf 也具有组的概念,即针对特定目的而一起安装的相关软件集合。

        组中的软件包可以为 mandatory (安装该组时必须安装)、default (安装该组时通常会安装)、或 optional (安装该组时不予以安装,除非特别要求) 。

1、DNF 显示组信息:

(1)dnf group list

        dnf group list 命令可显示已安装可用的组的名称。

(2)dnf group into:

        dnf group into 命令可显示组信息,将列出必选、默认和可选软件包名称。

2、DNF 安装组:

        dnf group install 命令将安装一个组,同时安装其必选、默认以及依赖的软件包。

三、使用 DNF 查看事务历史记录:

1、存储 :

         所有安装和删除事务的日志记录在 /var/log/dnf.rpm.log 中。

2、dnf history

        dnf history 命令可显示安装删除事务摘要

(1)dnf history into:

        dnf history info 命令可确认事务的信息

(2)dnf history undo:

        dnf history undo 命令可以撤销事务。

四、BaseOS 和 AppStream:

        RHEL 9 通过两个主要的软件仓库分发内容,分别为 BaseOS 和 AppStream 。

1、BaseOS:

        BaseOS 以 RPM 软件包的形式为 RHEL 提供核心操作系统内容。 BaseOS 组件的生命周期与 RHEL 发行版中的内容相同

2、 Application Stream:

        Application Stream 提供具有不同生命周期的内容,作为模块和传统 RPM 软件包。模块描述了属于一个整体的一组 RPM 软件包,可以包含多个流,使多个版本的应用可供安装。启用模块流后,系统能够访问该模块流中的 RPM 软件包。

注:AppStream 仓库包含两种类型的内容: Module 和传统的 RPM 软件包

       Module 描述了属于一个整体的一组 RPM 软件包,可以包含多个流,使多个版本的应用可供安装。启用Module Stream 后,系统能够访问该 Module Stream 中的RPM 软件包。通常,Module 围绕软件应用或编程语言的特定版本来整理 RPM 软件包。

3、通过 DNF 管理模块:

        RHEL 9 支持应用流的模块化功能。可使用 dnf module 命令处理模块化内容,否则,dnf 命令将按照与软件包类似的方式处理模块。

(1)dnf module list 命令可列出可用的模块,以及模块名称、流、配置集和摘要;

(2)dnf module list module-name 命令可列出特定模块的模块流并检索其状态;

(3)dnf module info module-name 命令可显示模块的详细信息;

(4)dnf module provides package 命令可显示哪个模块提供特定的软件包。

五、DNF 软件存储库:

1、启用红帽软件存储库:

        系统可以访问众多红帽存储库。

(1) dnf repolist all

        dnf repolist all 命令可列出所有可用存储库以及其状态。

(2)dnf config-manager 命令可用于启用或禁用仓库。

        1)启用仓库:

        2)禁用仓库:

2、本地软件仓库:

        一些仓库将配置文件和 GPG 公钥作为 RPM 软件包的一部分来提供,以简化它们的安装。

        dnf install 命令可以下载并安装这些 RPM 软件包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65322.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于32单片机的智能语音家居

一、主要功能介绍 以STM32F103C8T6单片机为控制核心,设计一款智能远程家电控制系统,该系统能实现如下功能: 1、可通过语音命令控制照明灯、空调、加热器、窗户及窗帘的开关; 2、可通过手机显示和控制照明灯、空调、窗户及窗帘的开…

Qt 5.14.2 学习记录 —— 일 新项目

文章目录 1、创建2、查看代码 ---- main.cpp3、查看代码 ---- widgt.h4、查看代码 ---- widgt.cpp和widget.ui5、查看代码 ---- Empty.pro6、运行产生的中间文件 1、创建 左上角的文件,新建文件或项目。如果要写一个GUI程序,应当选择Application&#x…

Transformer从零详细解读——DASOU讲AI

1. 从全局角度概括Transformer transformer的任务是什么? 进一步细化 进一步细化,注意:每个encoder结构相同,参数不同;decoder同理 原论文中的图如下: 2.Encoder 2.1 输入部分 (1&#xff09…

ARM发布Armv9.5架构:迈向更强性能与灵活性的新时代

2024年11月30日,ARM正式发布了其最新的Armv9.5架构,这是Arm技术发展的又一重要里程碑。从表中信息来看,Armv9.5架构的发布标志着该公司的架构系列在性能、灵活性和可扩展性方面取得了进一步突破。本次发布不仅是技术上的提升,更是…

分布式系统架构6:链路追踪

这是小卷对分布式系统架构学习的第6篇文章,关于链路追踪,之前写过traceId的相关内容:https://juejin.cn/post/7135611432808218661,不过之前写的太浅了,且不成系统,只是简单的理解,今天来捋一下…

Ubuntu 20.04安装gcc

一、安装GCC 1.更新包列表 user596785154:~$ sudo apt update2.安装gcc user596785154:~$ sudo apt install gcc3.验证安装 user596785154:~$ gcc --version二 编译C文件 1.新建workspace文件夹 user596785154:~$ mkdir workspace2.进入workspace文件夹 user596785154:~…

ansible-性能优化

一. 简述: 搞过运维自动化工具的人,肯定会发现很多运维伙伴们经常用saltstack和ansible做比较,单从执行效率上来说,ansible确实比不上saltstack(ansible使用的是ssh,salt使用的是zeromq消息队列[暂没深入了解]),但其实…

【ArcGISPro/GeoScenePro】检查并处理高程数据

数据 https://arcgis.com/sharing/rest/content/items/535efce0e3a04c8790ed7cc7ea96d02d/data 数字高程模型 (DEM) 是一种栅格,可显示地面或地形的高程。 数字表面模型 (DSM) 是另一种高程栅格,可显示表面的高度,例如建筑物或树冠的顶部。 您需要准备 DEM 和 DSM 以供分析…

【C++面向对象——类与对象】Computer类(头歌实践教学平台习题)【合集】

目录😋 任务描述 相关知识 一、不同访问属性成员的访问方式 1. public成员 2. private成员 3. protected成员 二、观察构造函数和析构函数的执行过程 1. 构造函数 2. 析构函数 三、学习类的组合使用方法 1. 类的组合概念 2. 实现示例 实验步骤 测试说明 …

xilinx的高速接口构成原理和连接结构及ibert工具的使用-以k7 GTX为例

一、相关简介 Xilinx的高速接口称之为transceivers(高速收发器),这部分的电路是专用电路,供电等都是独立的,根据速率可以分为GTP/GTX/GTH/GTY/GTM等。 Xilinx的高速接口是QUAD为单位的,没一个QUAD由一个时钟COMMON资…

rabbitmq——岁月云实战笔记

1 rabbitmq设计 生产者并不是直接将消息投递到queue,而是发送给exchange,由exchange根据type的规则来选定投递的queue,这样消息设计在生产者和消费者就实现解耦。 rabbitmq会给没有type预定义一些exchage,而实际我们却应该使用自己…

2.系统学习-逻辑回归

逻辑回归 前言最大似然估计概率似然函数(likelihood function)最大似然估计 逻辑回归逻辑回归的似然函数与梯度 分类问题常用评价指标项目案例拓展内容作业 前言 逻辑回归与线性回归均属于广义线性模型,区别在于线性回归用于解决回归问题,例如身高、销量…

记录一次电脑被入侵用来挖矿的过程(Trojan、Miner、Hack、turminoob)

文章目录 0、总结1、背景2、端倪3、有个微软的系统更新,就想着更新看看(能否冲掉问题)4、更新没成功,自动重启电脑5、风险文件(好家伙命名还挺规范,一看名字就知道出问题了)6、开机有一些注册表…

阿里云 人工智能与机器学习

阿里云的 人工智能(AI)与机器学习(ML) 服务为企业提供了全面的AI解决方案,帮助用户在多个行业实现数据智能化,提升决策效率,推动业务创新。阿里云通过先进的技术和丰富的工具,支持用…

Structured-Streaming集成Kafka

一、上下文 《Structured-Streaming初识》博客中已经初步认识了Structured-Streaming,Kafka作为目前最流行的一个分布式的实时流消息系统,是众多实时流处理框架的最优数据源之一。下面我们就跟着官方例子来看看Structured-Streaming是如何集成Kafka的&a…

生物医学信号处理--绪论

前言 参考书籍:刘海龙,生物医学信号处理,化学工业出版社 生物医学信号分类 1、由生理过程自发或者诱发产生的电生理信号和非电生理信号 • 电生理信号:ECG/心电、EEG/脑电、EMG/肌电、 EGG/胃电、 EOG/眼电 • 非电生理信号&am…

unity 播放 序列帧图片 动画

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、方法一:代码控制播放序列帧1、设置图片属性2、创建Image组件3、简单的代码控制4、挂载代码并赋值 二、方法二:直接使用1.Image上添加…

小程序与物联网(IoT)融合:开启智能生活新篇章

一、引言 随着移动互联网技术的飞速发展,小程序作为一种轻量级的应用形式,凭借其无需下载安装、即用即走的特点,迅速渗透到人们生活的各个领域。与此同时,物联网(IoT)技术也在不断进步,将各种物…

如何很快将文件转换成另外一种编码格式?编码?按指定编码格式编译?如何检测文件编码格式?Java .class文件编码和JVM运行期内存编码?

如何很快将文件转换成另外一种编码格式? 利用VS Code右下角的"选择编码"功能,选择"通过编码保存"可以很方便将文件转换成另外一种编码格式。尤其,在测试w/ BOM或w/o BOM, 或者ANSI编码和UTF编码转换,特别方便。VS文件另…