RedHat9 | DNF/YUM仓库管理软件包

本文详细介绍了如何在RedHat和CentOS系统中管理DNF和YUM仓库,包括配置客户端,自定义软件源,启用和禁用仓库。内容涵盖仓库文件解析,第三方仓库如EPEL的搭建,以及通过Web查看和安装第三方RPM包。

DNF/YUM仓库管理软件包

  • 一个基于RPM包的软件包管理器
  • 能够从指定的服务器自动下载RPM包并且安装,自动处理依赖性关系,并且一次性安装所有依赖的软件包
  • C/S模式
    • Server服务端提供RPM软件包与数据库文件repodata
    • Client客户端使用dnf仓库

常用组合

组合参数 意义
dnf info 查看软件包详情 rpm -qip
dnf install 安装软件包 rpm -ivh
dnf list 显示全部软件包名称 rpm -a
dnf search 搜索仓库中的指定软件包 `rpm -qa
dnf version 显示版本信息
dnf update 更新软件包 需要订阅或拥有开发者权限
dnf remove 删除软件软件包 rpm -evh
dnf history 查看使用dnf进行的历史操作
dnf provides 查询文件来源 rpm -qf

列出软件包

dnf list "chor*"  # 使用通配符模糊查询
dnf list   # 列出所有包

在这里插入图片描述

列出包组,我们可以直接安装整个服务,而不需要一个一个安装

dnf grouplist

在这里插入图片描述

搜索对应的包

dnf search ntp    # dnf search NAME

在这里插入图片描述

搜索包的作用、信息

dnf info dos2unix  # 从软件仓库中搜索,即使软件包没有安装
# dnf info package_name

在这里插入图片描述

查看历史记录,可以查看使用dnf进行了什么操作

dnf history

在这里插入图片描述

查询文件来源

# 如果使用rpm,我们要指定文件的绝对路径
rpm -qf /etc/chrony.conf

# dnf 可以使用通配符代替路径
dnf provides *chrony.conf
### 输出多个包含 AppStream 配置信息的含义 执行 `grep -r 'AppStream' /etc/yum.repos.d/` 命令后输出多个包含 AppStream 的配置信息,意味着在 `/etc/yum.repos.d/` 目录下的多个 `.repo` 文件中存在 AppStream 仓库的配置。这种情况可能是由于手动添加仓库配置、系统更新、安装某些软件时自动添加等原因造成的。多个配置可能指向不同的 AppStream 源,或者是重复的配置。 ### 可能存在的问题及解决办法 #### 重复配置问题 重复的 AppStream 仓库配置可能会导致 dnfyum 在获取元数据时出现重复下载、冲突等问题,影响软件包管理的效率。解决办法是找到重复的配置项,将多余的删除或者注释掉。例如,若输出显示有两个文件(`centos.repo` 和 `custom.repo`)中都有 AppStream 仓库的配置,且内容基本一致,可选择保留其中一个,将另一个文件中的相关配置注释掉。 ```ini # 在 custom.repo 中注释掉重复的 AppStream 配置 # [AppStream] # name=AppStream # baseurl=file:///mnt/AppStream # gpgcheck=0 # enabled=1 ``` #### 不同源配置问题 若多个配置指向不同的 AppStream 源,可能会导致软件包版本冲突、下载错误等问题。此时需要评估每个配置的来源和可靠性,选择合适的源配置,删除或注释掉其他不合适的配置。例如,一个配置指向本地挂载的镜像文件,另一个指向远程的镜像源,可根据实际情况选择保留其中一个。 ```ini # 保留本地挂载镜像源的配置,注释掉远程镜像源的配置 [AppStream] name=AppStream baseurl=file:///mnt/AppStream gpgcheck=0 enabled=1 # 注释掉远程镜像源的配置 # [AppStream-remote] # name=AppStream Remote # baseurl=http://remote-mirror/AppStream # gpgcheck=0 # enabled=1 ``` #### 配置错误问题 输出的配置信息可能存在语法错误、URL 错误等问题,导致 dnfyum 无法正常获取元数据。需要仔细检查每个配置项的语法和 URL 是否正确。例如,检查 `baseurl` 是否指向正确的路径或地址。 ```ini # 检查 baseurl 是否正确 [AppStream] name=AppStream baseurl=file:///mnt/AppStream # 确保该路径存在且正确挂载 gpgcheck=0 enabled=1 ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Meaauf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值