从0到1一步一步玩转openEuler--15 openEuler使用DNF管理软件包

news2024/9/30 15:34:48


文章目录

      • 15.1 搜索软件包
      • 15.2 列出软件包清单
      • 15.3 显示RPM包信息
      • 15.4 安装RPM包
      • 15.5 下载软件包
      • 15.6 删除软件包

DNF是一款Linux软件包管理工具,用于管理RPM软件包。DNF可以查询软件包信息,从指定软件库获取软件包,自动处理依赖关系以安装或卸载软件包,以及更新系统到最新可用版本。

image-20221207200634543说明:

  • DNF与YUM完全兼容,提供了YUM兼容的命令行以及为扩展和插件提供的API。
  • 使用DNF需要管理员权限,本章所有命令需要在管理员权限下执行。

使用dnf能够让您方便的进行查询、安装、删除软件包等操作。

15.1 搜索软件包

您可以使用rpm包名称、缩写或者描述搜索需要的RPM包,使用命令如下:

# dnf search term

示例如下:

[root@superman-21 ~]# dnf search lrzsz    
================================================ Name Exactly Matched: lrzsz ================================================
lrzsz.x86_64 : Free x/y/zmodem implementation
lrzsz.src : Free x/y/zmodem implementation
=============================================== Name & Summary Matched: lrzsz ===============================================
lrzsz-debuginfo.x86_64 : Debug information for package lrzsz
lrzsz-debugsource.x86_64 : Debug sources for package lrzsz
[root@superman-21 ~]#

15.2 列出软件包清单

要列出系统中所有已安装的以及可用的RPM包信息,使用命令如下:

# dnf list all

例如示例命令如下:

[root@superman-21 ~]# dnf list all
OS                                                                                            42 kB/s | 3.8 kB     00:00    
everything                                                                                    45 kB/s | 3.8 kB     00:00    
EPOL                                                                                          37 kB/s | 3.0 kB     00:00    
debuginfo                                                                                     44 kB/s | 3.8 kB     00:00    
source                                                                                        45 kB/s | 3.8 kB     00:00    
update                                                                                        40 kB/s | 3.5 kB     00:00    
update                                                                                       6.3 MB/s |  28 MB     00:04    
Installed Packages
CUnit.x86_64                                                   2.1.3-22.oe2203                                     @anaconda 
ModemManager-glib.x86_64                                       1.14.8-1.oe2203                                     @anaconda 
.
.
.

要列出系统中特定的RPM包信息,使用命令如下:

# dnf list glob_expression...

例如示例命令如下:

[root@superman-21 ~]# dnf list {httpd,lrzsz}                          
OS                                                                                            41 kB/s | 3.8 kB     00:00    
everything                                                                                    45 kB/s | 3.8 kB     00:00    
EPOL                                                                                          37 kB/s | 3.0 kB     00:00    
debuginfo                                                                                     45 kB/s | 3.8 kB     00:00    
source                                                                                        40 kB/s | 3.8 kB     00:00    
update                                                                                        41 kB/s | 3.5 kB     00:00    
Available Packages
httpd.src                                              2.4.51-5.oe2203                                             source    
httpd.x86_64                                           2.4.51-9.oe2203                                             update    
lrzsz.src                                              0.12.20-46.oe2203                                           source    
lrzsz.x86_64                                           0.12.20-46.oe2203                                           OS        
lrzsz.x86_64                                           0.12.20-46.oe2203                                           everything
[root@superman-21 ~]# 

15.3 显示RPM包信息

要显示一个或者多个RPM包信息,使用命令如下:

# dnf info package_name...

例如示例命令如下:

[root@superman-21 ~]# dnf info httpd
Last metadata expiration check: 0:00:45 ago on 2022年12月08日 星期四 20时23分54秒.
Available Packages
Name         : httpd
Version      : 2.4.51
Release      : 5.oe2203
Architecture : src
Size         : 7.4 M
Source       : None
Repository   : source
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant web server.

Name         : httpd
Version      : 2.4.51
Release      : 9.oe2203
Architecture : x86_64
Size         : 1.3 M
Source       : httpd-2.4.51-9.oe2203.src.rpm
Repository   : update
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant web server.

[root@superman-21 ~]# 

15.4 安装RPM包

要安装一个软件包及其所有未安装的依赖,请在root权限下执行如下命令:

# dnf install package_name

您也可以通过添加软件包名字同时安装多个软件包。配置文件/etc/dnf/dnf.conf添加参数strict=False,运行dnf命令参数添加–setopt=strict=0。请在root权限下执行如下命令:

# dnf install package_name package_name... --setopt=strict=0

例如示例命令如下:

[root@superman-21 ~]# dnf install httpd
Last metadata expiration check: 0:02:15 ago on 2022年12月08日 星期四 20时23分54秒.
Dependencies resolved.
=============================================================================================================================
 Package                             Architecture           Version                             Repository              Size
=============================================================================================================================
Installing:
 httpd                               x86_64                 2.4.51-9.oe2203                     update                 1.3 M
Installing dependencies:
 apr                                 x86_64                 1.7.0-4.oe2203                      OS                     110 k
 apr-util                            x86_64                 1.6.1-12.oe2203                     OS                     110 k
 httpd-filesystem                    noarch                 2.4.51-9.oe2203                     update                  11 k
 httpd-tools                         x86_64                 2.4.51-9.oe2203                     update                  71 k
 mariadb-connector-c                 x86_64                 3.1.13-2.oe2203                     update                 179 k
 mod_http2                           x86_64                 1.15.25-1.oe2203                    OS                     126 k

Transaction Summary
=============================================================================================================================
Install  7 Packages

Total download size: 1.9 M
Installed size: 6.2 M
Is this ok [y/N]: y
Downloading Packages:
(1/7): apr-util-1.6.1-12.oe2203.x86_64.rpm                                                   520 kB/s | 110 kB     00:00    
(2/7): mod_http2-1.15.25-1.oe2203.x86_64.rpm                                                 571 kB/s | 126 kB     00:00    
(3/7): apr-1.7.0-4.oe2203.x86_64.rpm                                                         485 kB/s | 110 kB     00:00    
.
.
.
  Verifying        : httpd-filesystem-2.4.51-9.oe2203.noarch                                                             5/7 
  Verifying        : httpd-tools-2.4.51-9.oe2203.x86_64                                                                  6/7 
  Verifying        : mariadb-connector-c-3.1.13-2.oe2203.x86_64                                                          7/7 

Installed:
  apr-1.7.0-4.oe2203.x86_64                 apr-util-1.6.1-12.oe2203.x86_64      httpd-2.4.51-9.oe2203.x86_64                
  httpd-filesystem-2.4.51-9.oe2203.noarch   httpd-tools-2.4.51-9.oe2203.x86_64   mariadb-connector-c-3.1.13-2.oe2203.x86_64  
  mod_http2-1.15.25-1.oe2203.x86_64        

Complete!
[root@superman-21 ~]# 

img 说明:

  • 安装RPM包过程中,若出现安装失败,可参考安装时出现软件包冲突、文件冲突或缺少软件包导致安装失败。
  • 请勿安装install-scipts软件包,该包仅用于imageTailor工具裁剪ISO时使用,若在openEuler系统上安装该软件包会导致系统无法启动。

15.5 下载软件包

使用dnf下载软件包,请在root权限下输入如下命令:

# dnf download package_name

例如示例命令如下:

[root@superman-21 ~]# dnf download lrzsz
Last metadata expiration check: 0:02:45 ago on 2022年12月08日 星期四 20时26分18秒.
lrzsz-0.12.20-46.oe2203.x86_64.rpm                                                           396 kB/s |  83 kB     00:00    
[root@superman-21 ~]# 
[root@superman-21 ~]# ls
anaconda-ks.cfg  lrzsz-0.12.20-46.oe2203.x86_64.rpm
[root@superman-21 ~]# 

如果需要同时下载未安装的依赖,则加上–resolve,使用命令如下:

# dnf download --resolve package_name

示例如下:

[root@superman-21 ~]# dnf download --resolve httpd
Last metadata expiration check: 0:05:25 ago on 2022年12月08日 星期四 20时26分18秒.
[SKIPPED] httpd-2.4.51-9.oe2203.x86_64.rpm: Already downloaded                                                              
(2/7): httpd-filesystem-2.4.51-9.oe2203.noarch.rpm                                           107 kB/s |  11 kB     00:00    
(3/7): httpd-tools-2.4.51-9.oe2203.x86_64.rpm                                                406 kB/s |  71 kB     00:00    
(4/7): mod_http2-1.15.25-1.oe2203.x86_64.rpm                                                 552 kB/s | 126 kB     00:00    
(5/7): apr-1.7.0-4.oe2203.x86_64.rpm                                                         716 kB/s | 110 kB     00:00    
(6/7): apr-util-1.6.1-12.oe2203.x86_64.rpm                                                   1.2 MB/s | 110 kB     00:00    
(7/7): mariadb-connector-c-3.1.13-2.oe2203.x86_64.rpm                                        1.9 MB/s | 179 kB     00:00    
[root@superman-21 ~]# 

15.6 删除软件包

要卸载软件包以及相关的依赖软件包,请在root权限下执行如下命令:

# dnf remove package_name...

例如示例命令如下:

[root@superman-21 ~]# dnf remove lrzsz 
Dependencies resolved.
=============================================================================================================================
 Package                   Architecture               Version                                  Repository               Size
=============================================================================================================================
Removing:
 lrzsz                     x86_64                     0.12.20-46.oe2203                        @OS                     201 k

Transaction Summary
=============================================================================================================================
Remove  1 Package

Freed space: 201 k
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                     1/1 
  Erasing          : lrzsz-0.12.20-46.oe2203.x86_64                                                                      1/1 
  Running scriptlet: lrzsz-0.12.20-46.oe2203.x86_64                                                                      1/1 
  Verifying        : lrzsz-0.12.20-46.oe2203.x86_64                                                                      1/1 

Removed:
  lrzsz-0.12.20-46.oe2203.x86_64                                                                                             

Complete!
[root@superman-21 ~]# 

在这里插入图片描述

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

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

相关文章

书籍《金字塔原理》读后感

上周读完了书籍《金字塔原理》这本书,这本书在管理学中,比较有名的书籍了,之前没怎么读过跟管理学相关书籍,这本算是第一本,是上级推荐给自己的,自己首先查了下,推荐度还是挺好的,看…

uniapp实现app检查更新与升级-uni-upgrade-center详解

app检查更新与升级 参考链接: 升级中心uni-upgrade-center - App uni-admin h5 api App资源在线升级更新 uni-app使用plus注意事项 关于在线升级(WGT)的几个疑问 什么是升级中心uni-upgrade-center uniapp官方开发的App版本更新的插件&#…

结构体的不定长数组,用起来就是这么爽

结构体的不定长数组 结构体数组不定长的做法,有两种 第一种: 指针 第二种:长度为0的数组 1. 结构体的数组指针 特点: 结构体初始化时,可以是结构体指针,如struct tag_info *pInfo NULL; 也可以是结构体变量…

Python文件和数据格式化(教程)

文件是一个存储在副主存储器的数据序列,可包含任何数据内容。 概念上,文件是数据的集合和抽象,类似的,函数是程序的集合和抽象。 用文件形式组织和表达数据更有效也更加灵活。 文件包括两种形式,文本文件和二进制文…

推荐几款市面上常用的免费CMS建站系统

小编在网站建设行业从业十几年,很多客户或者朋友找我做网站的时候,都喜欢开发一个完全熟悉自己的网站系统,但是小编这里很不推荐。从0到1全新开发,成本,效率和成熟度这些和主流的cms建站系统比起来,完全没有…

文件与IO

一.文件的定义什么是文件?文件分为狭义上的文件和广义上的文件 狭义上的文件:文件夹中的文件:包括视频、图片、文本、可执行文件等等......其中有些文件是有后缀名的,而有一些文件是没有后缀名的广义上的文件:在Linux系…

Unix Linux、MAC、Window 如何安装配置环境?都在这里啦~

嗨害大家好鸭!我是小熊猫~ 这次将向大家介绍如何在本地搭建Python开发环境。 Python可应用于多平台包括 Linux 和 Mac OS X。 你可以通过终端窗口输入 “python” 命令来查看本地是否已经安装Python以及Python的安装版本。 源码资料电子书:点击此处跳转文末名片获…

PHP代码审计神器——RIPS个人汉化版(2017年老文)

一、RIPS简介 RIPS是一款PHP开发的开源的PHP代码审计工具,由国外的安全研究者Johannes Dahse开发,目前开源的最新版本是0.55。 程序小巧玲珑,仅有不到500kb,其中的PHP语法分析非常精准,可以实现跨文件变量和函数追踪…

Virtualbox安装Windows11教程,提供虚机专用镜像下载。

微软在Windows11安装过程中增加了TPM2.0安全验证,所以一些老旧的电脑或者不带TPM认证协议的虚拟机都无法安装系统镜像。 这给我们体验尝鲜带来了一些小小的困扰。其实有2种解决方法可以在虚拟机中体验到Windows11带来的变化。 方法一 虚拟机启动时先加载PE系统镜…

Python 版本的常见算法模板(一)

文章目录前言排序模板排序算法归并排序KMP图邻接表Floyd 算法DijkstraBellMan-Ford 算法SPFA 算法Prim 算法Kruskra 算法染色法Hunger算法前言 翻了翻自己以前写的一些博文,发现的话,还是有一些误区没有写好的,所以的话这里的重新写一下&…

年薪40W的测试工程师被裁,回怼的一番话,令人沉思...

腾讯一位测试工程师被炒,回怼到:“反正我有技术,在哪不一样” 在腾讯上班的朋友给我分享了今天在他公司遇到的事情,他部门一位测试工程师被炒,具体原因好像就是跟上司闹矛盾,部门的都觉得非常可惜,因为他算…

本地修改的文件,使用git stash暂存之后不小心将暂存区清空,重新找回之前被暂存的文件

概述 问题 日常使用git 时,将本地所做的修改使用git stash暂存,使用git pull拉取代码之后,之间用git stash clear将git stash暂存的内容删除掉了。本文讲述如何恢复git stash clear掉的暂存区代码。 解决方法 执行指令 git log --graph -…

银行存取款程序设计(JAVA基础案例教程-黑马程序员编著-第三章-课后作业)

【案例3-2】银行存取款程序设计 【案例介绍】 案例描述 银行存取款的流程是人们非常熟悉的事情,用户可在银行对自己的资金账户进行存款、取款、查询余额等操作,极大的便利了人民群众对资金的管理。 本任务要求,使用所学知识编写一个银行存…

spring项目中使用策略模式

小白看了Java设计模式一书,晕晕乎乎,好像懂了,又好像啥都没懂。对照着书本一行行手打代码,完毕,执行,ok,设计模式已掌握。但到了项目中却又茫然。 小白我啊,今天尝试一下在自己的dem…

【思科设备,最常用的命令是下面这些吗!】

​在调试思科设备时,我们会经常使用各种命令去实现,但是使用最为频繁的有哪些?我们来看看下面频繁出现但是又非常有用且常用的命令! 1、? 在使用命令行时,我们不可能记住所有的命令,有时候只能…

git的一些常用指令

1)拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。 git clone 远程git仓库地址2)初始化本地git仓库。 git init 3)监控工作区的状态树,会把工作时的所有变化提交到暂存区,这里…

(七)、首页列表数据渲染【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】

1,获取首页列表数据 1.1在index页面中编写从数据库中获取首页列表数据的方法 //获取首页列表数据getData() {let artTemp db.collection("quanzi_articles").getTemp();let userTemp db.collection("uni-id-users").field("_id,usernam…

智慧校园人脸识别系统源码

智慧校园人脸识别系统源码 技术架构: 后端:Java 框架:springboot 前端页面:vue element-ui 小程序:小程序原生开发 电子班牌:Java Android 源码有演示,可正常上线运营可授权。 随着智慧校…

在成都的哪个培训机构学习Java好呢?

自从小课06年进入成都这个IT培训市场以来,短短十几年,招过很多学员,也见证过很多机构的起起落落。心中有万分的感慨,总结下来有这几点分享给大家,在选择培训机构时能看清本质,找到适合自己靠谱的机构学Java…

Go大道至简之抓取网页

目录前期准备环境教程浏览器启动命令启动Rod启动浏览器Rod自动查找浏览器路径并启动输入和点击、Enter动作多页面抓取前期准备 环境 Go版本大于等于1.18Go模块源更换,加速模块下载go env -w GO111MODULEon go env -w GOPROXYhttps://goproxy.cn,directRod模块 Rod…