【银河麒麟高级服务器操作系统】libtirpc-devel 安装问题分析

服务器环境以及配置

【OS镜像版本】

银河麒麟高级服务器操作系统

Kylin-Server-10-SP1-Release-Build20-20210518-x86_64

现象描述

执行dnf install libtirpc-devel 命令,安装libtirpc-devel包时,遇到libtirpc-devel没有安装的问题,具体现象如下:

  1. 在安装了libtirpc-1.2.6-2.ky10,并仅有base源的情况下(注:base源中版本是libtirpc-1.2.6-2.ky10),执行dnf install libtirpc-devel和dnf install libtirpc-devel.x86_64,表现一致,能正常安装libtirpc-devel。
  2. 在安装了libtirpc-1.2.6-2.ky10,同时开启base源和updates源的情况下(注:updates源中版本是libtirpc-1.2.6-2.p02.ky10),执行dnf install libtirpc-devel,只会显示升级libtirpc至1.2.6-2.p02.ky10,rpm -qa libtirpc-devel发现,libtirpc-devel未安装。
  3. 在安装了libtirpc-1.2.6-2.p02.ky10的情况下,同时开启base源和updates源的情况下(注:updates源中版本是libtirpc-1.2.6-2.p02.ky10),dnf install libtirpc-devel会显示libtirpc-1.2.6-2.p02.ky10已经安装并结束。
  4. 在安装了libtirpc-1.2.6-2.p02.ky10的情况下,只开启updates源的情况下(注:updates源中版本是libtirpc-1.2.6-2.p02.ky10),dnf install libtirpc-devel能成功安装libtirpc-devel-1.2.6-2.p02.ky10。

综合以上现象,libtirpc包安装具有以下两类现象:

  1. 在只开启一个仓库源的时候,libtirpc-devel能正常安装。
  2. 在base和updates同时开启时,libtirpc-devel安装就会失败,libtirpc能正常安装成功。

现象分析

base源中的libtirpc包版本是1.2.6-2,updates源中的libtirpc包版本是1.2.6-2.p02;两个仓库中的版本不同影响了libtirpc-devel安装,libtirpc没有影响。

通过分析libtirpc包,libtirpc.spec中有如下设置:

以上配置会导致dnf在安装libtirpc-devel时,从base和updates源中发现有冲突版本,会导致libtirpc-devel的安装失败。

分析结果

因为base和updates两个源中存在不同的版本,libtirpc-devel版本之间的冲突检查,导致了同时开启base和updates源的情况下,dnf安装libtirpc-devel时失败。

解决方案

将libtirpc升级到1.2.6-4.ky10及以上版本,即可解决该问题。

相关推荐
2603_9552797016 分钟前
Cursor + GitOps:自动化运维新姿势
运维·自动化
Waay38 分钟前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
三8441 小时前
文件查找/文件压缩/解压缩
linux·运维·服务器
小猪写代码1 小时前
Linux 管道(Pipeline)作业
linux·运维·服务器
桌面运维家1 小时前
如何用半缓存云桌面将服务器硬盘容量扩展至本地终端?
运维·服务器·缓存
Jurio.1 小时前
Codex App SSH 远程开发教程:本地连接远程服务器项目
服务器·ssh·远程工作·codex
激情的学姐1 小时前
【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器
运维·nginx
ai_coder_ai2 小时前
编写自动化脚本,在自己后端服务中使用Open Api进行设备相关操作
java·运维·自动化
会周易的程序员3 小时前
microLog 的本地日志读取接口 log_reader — 本地日志文件读取工具开发指南
linux·物联网·架构·嵌入式·日志·iot·aiot
spider_xcxc3 小时前
Redis 数据库高质量实践指南(一)
运维·数据库·redis·oracle·云计算