当前位置: 首页 > news >正文

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


文章目录

      • 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 kapr-util                            x86_64                 1.6.1-12.oe2203                     OS                     110 khttpd-filesystem                    noarch                 2.4.51-9.oe2203                     update                  11 khttpd-tools                         x86_64                 2.4.51-9.oe2203                     update                  71 kmariadb-connector-c                 x86_64                 3.1.13-2.oe2203                     update                 179 kmod_http2                           x86_64                 1.15.25-1.oe2203                    OS                     126 kTransaction Summary
=============================================================================================================================
Install  7 PackagesTotal 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 kTransaction Summary
=============================================================================================================================
Remove  1 PackageFreed space: 201 k
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                     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.lryc.cn/news/8272.html

相关文章:

  • 【java】Spring Boot --spring boot项目整合xxl-job
  • 视图、索引、存储过程、触发器
  • ImportError: cannot import name ‘FlattenObservation‘ from ‘gym.wrappers‘ 解决方案
  • 大件传输的9种方法
  • 将vue2的项目《后台管理模式》转变为vue3版本 (一)
  • 苹果手机怎么下载手机铃声?图文教程,快速学会
  • AJAX笔记(二)Fetch和axios
  • TOTOLINK NR1800X 系列 CVE 分析
  • IDEA如何将代码进行上下左右移动,改变位置
  • 【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢
  • 深度学习Week15-common.py文件解读(YOLOv5)
  • qemu的snapshot快照功能的详细使用介绍
  • 谷歌关键词优化多少钱【2023年调研】
  • 凸包及其算法
  • 计算机网络学习笔记(二)物理层
  • 为什么职称要提前准备?
  • MyBatis详解1——相关配置
  • 字节青训营——秒杀系统设计学习笔记(三)
  • 每天一道大厂SQL题【Day10】电商分组TopK实战
  • 最全的免费录屏工具,这 19 款录屏软件绝对值得你收藏
  • vb.net计算之.net core基础(2)-发布应用
  • 微服务项目【商品秒杀接口压测及优化】
  • 1997. 访问完所有房间的第一天
  • 通达信交易接口以什么形式执行下单的?
  • CobaltStrike上线微信通知
  • 喜茶、奈雪的茶“花式”寻生路
  • Xstream使用教程
  • 【正点原子FPGA连载】第十一章PL SYSMON测量输入模拟电压 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南
  • 纷享销客百思特 | 数字化营销赋能企业新增长沙龙圆满落幕
  • oracle查看具体表占用空间 oracle查看表属于哪个用户