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

news/2024/7/10 20:07:20 标签: linux, 运维, 开源软件, 开源, 服务器


文章目录

      • 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.niftyadmin.cn/n/69635.html

相关文章

Spring入门学习

Spring入门学习 文章目录Spring入门学习Spring概述Spring FrameworkIOCIOC容器DIIOC容器的实现类①FileSystemXmlApplicationContext②ClassPathXmlApplicationContext基于XML管理bean入门案例创建类创建xml在Spring配置文件中配置bean测试Spring概述 Spring 是最受欢迎的企业级…

1个byte的大小[-128,127],原码、反码、补码

为什么一个字节byte的大小是[-128,127] 想要解决这个问题,我们需要了解一下数字在计算机中的表达方式。 这涉及到几个概念:机器数、真值、原码、补码、反码 机器数 机器数是指一个数在计算机中的二进制表示; 其中最高位为符号位,…

微信小程序返回上级页面传参的几种方法

文章目录1、使⽤本地缓存Storage实现2、使⽤⼩程序的Page页⾯栈getCurrentPages实现3、使⽤globalData实现4、使⽤wx.navigateTo API的events实现在做微信小程序跳转页面,经常会遇到二级页面要返回上级页面,并且需要携带参数,wx.navigateTo()…

AcWing语法基础课笔记 第二章 printf语句与C++中的判断结构

第二章 printf语句与C中的判断结构 学习语言最好的方式就是实践&#xff0c;每当掌握一个新功能时&#xff0c;就要立即将这个功能应用到实践中。 ——闫学灿 一、printf输出格式 注意&#xff1a;使用printf 时最好添加头文件 #include <cstdio>。 Int、float、double、…

C++学习记录——십 STL初级认识、标准库string类

文章目录1、什么是STL2、STL简介3、什么是string类4、string类的常用接口说明1、常见构造函数2、容量操作3、迭代器4、其他的标准库的string类关于string类的内容&#xff0c;可以在cplusplus.com查看到。 1、什么是STL STL是C标准库的重要组成部分&#xff0c;不仅是一个可复…

Nginx介绍及安装(windows版,Linux版)

目录 一、Nginx介绍 1、Nginx优势 2、Nginx作用 3、部署静态资源 4、代理 5、负载均衡 二、Nginx安装步骤&#xff08;windows版&#xff09; 三、Nginx安装步骤&#xff08;Linux版&#xff09; 1、官网下载安装包&#xff0c;下载完之后上传到Linux系统上 2、在Lin…

webpack(高级)--文件的压缩Terser(js/css/html) Tree Shaking

webpack Terser Terser是一个javascript的解释(Parser),Mangler(绞肉机) /Compressor(压缩机)的工具集 早期我们会使用uglify-js来压缩&#xff0c;丑化我们的javascript代码 但是目前已经不在维护 并且不支持ES6语法 Terser是从uglify-es fork 过来的 也就是说 Terser可以帮…

Docker搭建MySQL主主模式+Keepalived实现高可用集群

1.环境准备&#xff1a; 系统版本 Centos7 IP&#xff1a;10.10.11.79 master IP&#xff1a;10.10.11.80 backup 虚拟ip&#xff1a;10.10.11.82 Docker环境&#xff1a; centos7离线安装docker&#xff0c;docker-compose keepalived安装包&#xff1a; https://www.k…