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

DNF 下载 RPM 依赖包及忽略特定依赖的方法

本文档详细说明如何使用dnf命令下载 RPM 软件包及其依赖以及在本地已存在自制 RPM 包的情况下如何忽略特定依赖进行下载和安装。第一部分DNF 命令下载 RPM 及其依赖包适用于 RHEL / CentOS 8 / Rocky / Alma / Fedora 等系统。1. 环境准备确保系统已安装提供dnf download命令的插件包sudo dnf install -y dnf-utils # 或 sudo dnf install -y dnf-plugins-core2. 下载方法一推荐dnf download --resolve这是最直接、最常用的方式直接从仓库下载指定的 RPM 及其依赖。场景命令示例基本下载dnf download --resolve wget指定下载目录dnf download --resolve --destdir /tmp/rpms/ wget指定架构dnf download --resolve --arch x86_64 --destdir /tmp/rpms/ wget包含弱依赖(推荐包)dnf download --resolve --alldeps --setoptinstall_weak_depsTrue wget说明执行后所有 RPM 文件将保存在当前目录或--destdir指定的目录中。3. 下载方法二dnf install --downloadonly此方法模拟安装过程将所需的所有 RPM 包下载到缓存目录。# 下载到默认缓存目录sudodnfinstall--downloadonlyhttpd# 下载到指定目录sudodnfinstall--downloadonly--downloaddir/tmp/rpms/ httpd默认缓存路径/var/cache/dnf/repo_name-xxxx/packages/4. 离线安装将下载好的 RPM 包拷贝至目标离线机器执行安装dnfinstall./*.rpm# 或dnf localinstall ./*.rpm注意不建议使用rpm -ivh *.rpm因为它无法自动处理依赖关系。第二部分忽略依赖本地已有自制 RPM 包当在本地已经构建了部分 RPM 包例如定制化的库或组件希望 DNF 在下载或安装时不处理这些特定的依赖可采用以下方案。方案 1最推荐构建本地仓库Local Repository核心思想不是强行忽略依赖而是让 DNF 知道这些依赖已经由你的自制 RPM 满足了。操作步骤创建本地仓库目录并放入自制 RPMmkdir-p/opt/local-rpmscpyour-custom-package*.rpm /opt/local-rpms/生成仓库元数据createrepo_c /opt/local-rpms配置本地仓库文件cat/etc/yum.repos.d/local.repoEOF [local] nameLocal Custom RPMs baseurlfile:///opt/local-rpms enabled1 gpgcheck0 EOF刷新 DNF 缓存dnf clean all dnf makecache✅优点最符合 DNF/YUM 的设计理念。依赖关系清晰不会破坏系统稳定性。便于后续的升级和维护。方案 2使用--exclude排除依赖下载阶段核心思想在下载时明确告诉 DNF 跳过某些包。dnf download--resolve\--excludeconflicting-lib\--excludeanother-unwanted-dep\--destdir/tmp/rpms\main-package或者结合install命令sudodnfinstall\--downloadonly\--downloaddir/tmp/rpms\--excludeconflicting-lib\main-package⚠️注意此方式仅跳过下载如果目标环境中确实缺少这些依赖安装阶段仍会失败。方案 3在 RPM Spec 中声明 Provides高级/根本解决核心思想让你的自制 RPM “冒充”系统依赖从根本上解决依赖冲突。在你的自制 RPM 的.spec文件中添加Provides字段Name: my-custom-lib Version: 1.0 Release: 1%{?dist} # 声明提供了某个 so 文件或虚拟包 Provides: libxxx.so.1()(64bit) Provides: system-library-name 2.0这样当其他软件依赖libxxx.so.1或system-library-name时DNF 会自动识别为已满足不再下载对应的系统包。总结与建议场景推荐方案单纯下载依赖dnf download --resolve离线环境部署方案一本地仓库dnf install ./*.rpm自制 RPM 替代系统库方案三Spec Provides结合方案一临时跳过某些包下载方案二--exclude最佳实践流程开发自制 RPM → 加入本地仓库 → 配置 dnf → 正常下载/安装

相关文章:

DNF 下载 RPM 依赖包及忽略特定依赖的方法

本文档详细说明如何使用 dnf命令下载 RPM 软件包及其依赖,以及在本地已存在自制 RPM 包的情况下,如何忽略特定依赖进行下载和安装。第一部分:DNF 命令下载 RPM 及其依赖包 适用于 RHEL / CentOS 8 / Rocky / Alma / Fedora 等系统。 1. 环境准…...

4月3日打卡

20:20开始,学习90分钟...

LLM - 2026 AI 文本转可视化工具终极指南:PicDoc.ai vs Napkin.ai 及 EdrawMax、Whimsical 等 8 大神器深度对比

文章目录概述一、PicDoc.ai vs Napkin.ai:专业全能 vs 轻快协作二、其他 6 大同类工具推荐三、8 大工具终极对比一览表(关键指标)四、 建议概述 在 2026 年的 AI 生产力浪潮中,把枯燥文字一键变成专业流程图、思维导图、信息图、…...

网站 SEO 优化推广需要分阶段投入资金吗

网站 SEO 优化推广需要分阶段投入资金吗 在当今数字化时代,网站 SEO 优化推广已经成为企业获取在线流量和提升品牌知名度的关键手段。无论是小型创业公司还是大型企业,对于网站 SEO 优化推广的投入都是必不可少的。这种投入资金是否需要分阶段进行呢&am…...

LangChain DeepAgents 速通指南(六)—— DeepAgents SubAgent 子智能体机制

前言 上篇文章《LangChain DeepAgents 速通指南(五)—— 快速了解DeepAgents框架及其核心特性》介绍了 DeepAgents 在任务规划、上下文管理、子智能体并行执行等方面的强大能力,仅需少量代码即可构建出复杂的智能体。上篇的案例演示也展示了…...

UE5 开发神器:蓝图节点预设插件 — 支持多节点打组 / 快捷键 / 拖拽插入 / 材质编辑器

插件名称:UPNodePresets 插件包含以下功能 Action Palette 搜索:右键空白处搜索预设名称,回车即插入快捷键插入:按住数字键 0~9 鼠标左键点击任意位置,瞬间插入(Blueprint / Material 独立绑定&#xff…...

数据分析师课程

数据分析是什么定义:运用统计分析方法对收集的数据进行汇总、理解和消化,最大化开发数据功能数据形式:观测值通过实验/测量获得,常以图表或表格呈现分类体系:描述性分析(初级):占日常…...

2025届必备的五大降AI率神器实测分析

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 人工智能生成文本普及起来后,各种各样的AI检测系统被创造出来,为了应…...

DL基础营 | 第P1周:Pytorch实现mnist手写数字识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊编译器:jupyterlab 一、 前期准备 1. 设置GPU 2. 导入数据 3. 数据可视化 二、构建简单的CNN网络 加载并打印模型 三、 训练模型 1. 设置超参数 …...

2025届必备的五大降重复率平台实测分析

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于学术写作和论文创作的范畴之内,维普检测是颇为常见的查重办法。当遭遇人工智能…...

7分钟掌握WorkshopDL:打破平台壁垒的Steam创意工坊模组下载终极方案

7分钟掌握WorkshopDL:打破平台壁垒的Steam创意工坊模组下载终极方案 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 你是否在Epic Games Store或GOG平台购买了游戏&…...

Java二分查找(笔记、(25))

在 Java 中,二分查找(Binary Search) 是一种在有序数组中快速查找目标值的算法。它的核心思想是每次将查找范围缩小一半,时间复杂度为 O(log n),相比顺序查找的 O(n) 效率高很多。下面我会从原理、迭代实现、递归实现、…...

线性基——2026杭电春季联赛第三场1005月球异或

前言 本人蒟蒻,如有错误还请指出。 前不久刚学了线性基,结果就用上了。线性基yyds! 没学过线性基的出门左拐 放一个之前写的线性基笔记 原题链接 题目大意 新定义三进制下的异或运算 。 再给你一个长度为 的数组,你可以…...

spring-ai 第一步集成入门

spring-ai 第一步入门 官网spring ai 做什么?涉及相关概念检索增加RAG工具调用 spring-ai 第一步入门 官网 spring-ai网址【https://spring.io/projects/spring-ai】 Spring AI 目前支持将输入和输出处理为语言、图像和音频的模型 spring ai 做什么?…...

零基础学A人工智能: 4.大模型基础与本地部署全指南

今天我们正式开启AI大模型的学习,从最基础的大模型概念讲起,到本地部署大模型的完整流程,再到Ollama工具的全功能详解,最后延伸到完整的AI聊天机器人项目架构,帮大家从零搭建起大模型应用的完整知识体系,零…...

Pytest参数化测试中文乱码?这2个隐藏技巧让你的测试报告清晰可读

Pytest参数化测试中文乱码?这2个隐藏技巧让你的测试报告清晰可读 在Python自动化测试领域,Pytest凭借其简洁的语法和强大的功能已成为开发者的首选工具。特别是它的参数化测试功能,能够高效验证多组输入数据下的代码行为。但当我们尝试用中文…...

从零到精通的Android Kotlin实战学习旅程:50个项目带你掌握移动开发核心技能

从零到精通的Android Kotlin实战学习旅程:50个项目带你掌握移动开发核心技能 【免费下载链接】50-android-kotlin-projects-in-100-days My everyday Android practice demos with Kotlin in 100 days. 项目地址: https://gitcode.com/gh_mirrors/50/50-android-k…...

3步打造waifu2x-caffe轻量化部署方案:图像增强绿色版打包全流程

3步打造waifu2x-caffe轻量化部署方案:图像增强绿色版打包全流程 【免费下载链接】waifu2x-caffe waifu2xのCaffe版 项目地址: https://gitcode.com/gh_mirrors/wa/waifu2x-caffe waifu2x-caffe是一款基于深度学习的图像增强工具,能够通过AI算法实…...

用于计算系统状态的卡尔曼最优增益和最小均方误差(MMSE)估计研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室🍊个人信条:格物致知,完整Matlab代码及仿真咨询…...

macOS 26.4推送,新增充电上限,利好电池寿命

macOS 26.4 新增自定义充电上限,有效延长 Mac 电池寿命。搭配CleanMyMac电池监控功能,实时掌握健康度、循环次数与温度,软硬结合保护电池。苹果于2026年3月24日正式推送了macOS Tahoe 26.4版本更新。本次更新最受关注的变化,是为M…...

手把手教你拆解Coze‘城市觉醒’工作流:从提示词工程到插件调用的保姆级避坑指南

深度拆解Coze“城市觉醒”工作流:从提示词优化到插件调用的高阶实践 清晨五点的城市天际线逐渐亮起,高楼的轮廓在晨雾中若隐若现——这种充满电影感的画面,过去需要专业团队耗费数周时间拍摄剪辑。如今,借助Coze平台的工作流能力&…...

Buildroot与Qt5的X11VNC集成:解决EGLFS与XCB插件冲突的实践指南

1. 为什么需要X11VNC与Qt5集成? 在嵌入式开发中,远程调试图形界面是个常见需求。想象一下,你的设备可能放在工厂车间或者户外,每次修改代码后都要跑到设备前查看效果,这效率实在太低。X11VNC就像给你的设备装了个"…...

Cursor AI 开发环境配置:告别依赖冲突,用 Conda 虚拟环境管理你的数据科学项目

Cursor AI 开发环境配置:告别依赖冲突,用 Conda 虚拟环境管理你的数据科学项目 在数据科学和机器学习项目的开发过程中,依赖管理一直是个令人头疼的问题。想象一下这样的场景:你正在开发一个基于TensorFlow 2.4的项目,…...

零中频接收机设计避坑指南:从IQ信号处理到链路预算,这些细节ADS仿真时千万别忽略

零中频接收机设计避坑指南:从IQ信号处理到链路预算的实战精要 零中频架构在集成化浪潮中展现出独特优势——省去笨重的中频滤波器,直接实现射频到基带的转换。但当你真正用ADS搭建仿真模型时,90度移相器的相位误差可能悄悄吞噬系统EVM指标&am…...

别再只测电压了!解锁杰理AC632蓝牙芯片ADC的隐藏玩法:电池检测与低功耗设计

杰理AC632蓝牙芯片ADC实战:电池检测与低功耗设计全解析 在蓝牙耳机、智能穿戴等电池供电设备的开发中,精准的电池电量监测和低功耗设计往往是决定产品成败的关键因素。杰理AC632作为一款广泛应用于消费电子领域的蓝牙芯片,其内置的ADC功能为开…...

如何解决微信QQ语音无法播放?Silk音频转换工具让跨设备播放不再难

如何解决微信QQ语音无法播放?Silk音频转换工具让跨设备播放不再难 【免费下载链接】silk-v3-decoder [Skype Silk Codec SDK]Decode silk v3 audio files (like wechat amr, aud files, qq slk files) and convert to other format (like mp3). Batch conversion su…...

从浮点到整数:深入解析QAT量化模型的推理计算机制

1. 量化感知训练(QAT)的核心思想 量化感知训练就像给模型提前打预防针。想象一下,你平时用计算器做数学题,突然有一天只能用整数计算(比如只能输入1、2、3,不能输入1.5),这时候直接硬…...

音频转换神器fre:ac:让无损音乐管理更简单

音频转换神器fre:ac:让无损音乐管理更简单 【免费下载链接】freac The fre:ac audio converter project 项目地址: https://gitcode.com/gh_mirrors/fr/freac 价值定位:为什么选择fre:ac作为你的音频处理中心? 在数字音乐时代&#x…...

TimescaleDB实战:5分钟搞定物联网传感器数据存储与查询(附Grafana配置)

TimescaleDB实战:5分钟构建物联网传感器数据存储与可视化系统 物联网设备的爆炸式增长带来了海量传感器数据的存储和分析挑战。传统关系型数据库在面对高频写入的时间序列数据时往往力不从心,而NoSQL方案又牺牲了SQL的灵活性和事务支持。TimescaleDB作为…...

深入解析YOLO中mode.predict()的关键参数与应用场景

1. 理解YOLO的mode.predict()方法 YOLO(You Only Look Once)作为目标检测领域的标杆算法,其mode.predict()方法是实际应用中最常接触的核心接口。这个方法封装了从数据输入到结果输出的完整推理流程,相当于整个检测系统的"总…...