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

CentOS 8/Stream 8系统DNF换源后,安装软件还是慢?试试这几个排查命令和优化技巧

CentOS 8/Stream 8系统DNF换源后安装缓慢的深度排查与优化指南当你已经按照教程将CentOS 8/Stream 8的DNF源切换为国内镜像却发现软件安装速度依然不尽如人意时这种体验确实令人沮丧。作为长期使用CentOS系统的技术专家我完全理解这种明明换了源却不见效的困惑。本文将带你深入排查问题根源并提供一系列高级优化技巧让你的DNF真正飞起来。1. 基础排查确认源是否真正生效很多用户在换源后直接开始安装软件却忽略了最基本的验证步骤。让我们先用几个关键命令确认你的换源操作是否真正生效。首先检查当前启用的仓库列表dnf repolist这个命令会显示所有已启用的仓库及其基本信息。重点关注以下几点仓库URL确认列出的baseurl或mirrorlist确实指向你期望的国内镜像站如阿里云、清华等而非默认的centos.org仓库状态确保状态为enabled而非disabled最后元数据更新时间检查是否近期更新过过期的元数据可能导致DNF无法找到最新软件包如果发现仓库URL不正确可能是以下原因导致配置文件未正确替换配置文件路径错误应在/etc/yum.repos.d/目录下配置文件语法错误常见错误示例有些用户在替换repo文件时只是添加了新源而忘记禁用旧源导致DNF仍在尝试从国外源下载。正确的做法是# 备份原有repo文件 sudo mv /etc/yum.repos.d/CentOS-*.repo /backup/ # 下载新repo文件 sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo2. 深度清理不只是dnf clean all那么简单大多数教程只告诉你运行dnf clean all但这只是最基础的清理。DNF的缓存系统其实更为复杂需要更彻底的清理方式。2.1 元数据缓存的高级清理除了常规清理还可以尝试# 彻底删除所有缓存包括元数据和软件包 sudo dnf clean all --enablerepo* # 删除缓存的元数据 sudo rm -rf /var/cache/dnf/*为什么需要这样做DNF有时会缓存损坏的元数据即使运行clean all也可能残留导致后续操作仍然使用旧数据。2.2 重建元数据的正确姿势在清理后重建元数据也有讲究# 强制重新下载所有元数据即使未过期 sudo dnf makecache --refresh可以添加-v参数查看详细过程sudo dnf -v makecache这样能观察到DNF具体从哪些镜像站获取数据有助于判断是否真的在使用国内源。3. 网络诊断找出真正的瓶颈所在即使使用了国内镜像网络问题仍可能导致下载缓慢。以下命令可以帮助诊断3.1 测试镜像站连接速度# 测试镜像站HTTP访问速度 time curl -I https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/repodata/repomd.xml # 对比不同镜像站 time curl -I https://mirrors.tuna.tsinghua.edu.cn/centos/8-stream/BaseOS/x86_64/os/repodata/repomd.xml3.2 检查DNS解析有时DNS解析问题会导致连接缓慢dig mirrors.aliyun.com nslookup mirrors.tuna.tsinghua.edu.cn如果发现解析时间过长可以考虑更换为公共DNS如114.114.114.114或223.5.5.5。3.3 网络路由跟踪traceroute mirrors.aliyun.com mtr mirrors.aliyun.com这些命令能显示数据包到达镜像站的全路径帮助识别网络瓶颈。4. 高级优化让DNF发挥最大效能经过上述排查确认源和网络都没问题后还可以通过以下高级设置进一步提升DNF性能。4.1 调整DNF并行下载设置编辑DNF配置文件sudo vi /etc/dnf/dnf.conf添加或修改以下参数max_parallel_downloads10 fastestmirrortrue deltarpmtrue参数说明参数推荐值作用max_parallel_downloads5-10并行下载线程数fastestmirrortrue自动选择最快镜像deltarpmtrue使用增量RPM更新4.2 优化元数据下载metadata_expire1h minrate1M timeout30 retries3注意事项在低带宽环境中过高的并行下载数可能导致连接超时fastestmirror会增加初始元数据下载时间但能显著提升后续软件包下载速度4.3 选择性启用仓库不是所有仓库都需要启用。禁用不用的仓库可以减少元数据下载量# 禁用特定仓库 sudo dnf config-manager --set-disabled repository_name # 例如禁用PowerTools仓库 sudo dnf config-manager --set-disabled PowerTools5. 疑难杂症特殊问题解决方案即使做了各种优化仍可能遇到一些特殊问题。以下是几种常见情况及解决方法。5.1 仓库元数据损坏症状执行dnf命令时出现Metadata file does not match checksum等错误。解决方案# 彻底清理并重建元数据 sudo rm -rf /var/cache/dnf/* sudo dnf clean all sudo dnf makecache5.2 软件包签名验证失败症状出现GPG key retrieval failed或Package verification failed错误。解决方案# 重新导入GPG密钥 sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial # 或者禁用GPG检查不推荐 sudo dnf install --nogpgcheck package_name5.3 仓库优先级冲突当多个仓库提供相同软件包时可能导致意外行为。可以安装并配置优先级插件sudo dnf install yum-plugin-priorities然后在repo文件中添加priority1数字越小优先级越高建议给国内镜像站设置较高优先级(如priority1)。6. 替代方案当标准方法失效时如果经过上述所有步骤问题依旧可以考虑以下替代方案。6.1 使用第三方工具加速# 安装axelget插件实现多线程加速 sudo dnf install axel sudo vi /etc/dnf/plugins/axelget.conf配置示例[main] enabled1 max_connections10 min_speed106.2 离线安装方案对于关键软件可以考虑下载RPM包后离线安装# 在有网络的环境下载 dnf download --destdir/path/to/save package_name # 在目标系统安装 sudo dnf install /path/to/package.rpm6.3 考虑系统升级CentOS 8已停止维护Stream 8也有其局限性。如果问题持续且严重影响工作可以考虑迁移到CentOS Stream 9评估其他兼容发行版如Rocky Linux或AlmaLinux7. 长期维护建议为了保持DNF的最佳性能建议建立以下维护习惯定期清理每月执行一次完整的缓存清理sudo dnf clean all sudo rm -rf /var/cache/dnf/*监控更新订阅镜像站公告及时了解服务变更阿里云镜像站状态https://developer.aliyun.com/mirror/status清华TUNA状态页https://mirrors.tuna.tsinghua.edu.cn/status/性能基准测试记录关键操作的执行时间便于比较优化效果time dnf makecache time dnf install nano配置文件版本控制备份重要的配置文件sudo cp /etc/yum.repos.d/CentOS-*.repo ~/backup/ sudo cp /etc/dnf/dnf.conf ~/backup/经过以上全方位的优化和调整你的CentOS 8/Stream 8系统应该能够获得接近物理极限的软件下载速度。在实际生产环境中我通过这些方法成功将软件安装时间从原来的数十分钟缩短到几十秒。

相关文章:

CentOS 8/Stream 8系统DNF换源后,安装软件还是慢?试试这几个排查命令和优化技巧

CentOS 8/Stream 8系统DNF换源后安装缓慢的深度排查与优化指南当你已经按照教程将CentOS 8/Stream 8的DNF源切换为国内镜像,却发现软件安装速度依然不尽如人意时,这种体验确实令人沮丧。作为长期使用CentOS系统的技术专家,我完全理解这种&quo…...

3分钟上手:NBTExplorer终极指南 - 可视化编辑Minecraft游戏数据的免费神器

3分钟上手:NBTExplorer终极指南 - 可视化编辑Minecraft游戏数据的免费神器 【免费下载链接】NBTExplorer A graphical NBT editor for all Minecraft NBT data sources 项目地址: https://gitcode.com/gh_mirrors/nb/NBTExplorer 你是否曾经想要修改Minecraf…...

完整指南:如何在5分钟内快速上手BioAge生物年龄计算工具包

完整指南:如何在5分钟内快速上手BioAge生物年龄计算工具包 【免费下载链接】BioAge Biological Age Calculations Using Several Biomarker Algorithms 项目地址: https://gitcode.com/gh_mirrors/bi/BioAge BioAge生物年龄计算工具包是一款基于R语言开发的强…...

手机也能玩转无人机仿真:用安卓QGC App连接同一WiFi下的PX4 JMAVSim模拟器

手机也能玩转无人机仿真:用安卓QGC App连接同一WiFi下的PX4 JMAVSim模拟器 无人机开发者和爱好者们,是否曾想过用手机就能完成整个无人机仿真测试流程?告别笨重的电脑束缚,只需一部安卓设备,就能在沙发上调试飞控算法。…...

独立开发者利用taotoken模型广场为不同任务选择性价比最优模型

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 独立开发者利用taotoken模型广场为不同任务选择性价比最优模型 对于独立开发者而言,在有限的预算内高效完成多样化的开…...

嵌入式Linux驱动开发 —— 从DTS到代码的桥梁与简单OF系列API(3)

接前一篇文章:嵌入式Linux驱动开发 —— 从DTS到代码的桥梁与简单OF系列API(2) 节点查找 API:如何在设备树中定位目标节点 有了数据结构基础,现在我们可以开始讲具体的API了。第一步是找到你要操作的节点。就像你想操…...

如何优化 MySQL 千万级数据分页查询的性能?

它的本质是:**传统 LIMIT offset, size 在大数据量下性能急剧下降,是因为 MySQL 必须 扫描并丢弃 前 offset 行数据。当 offset 很大时(如 LIMIT 1000000, 10),MySQL 需要读取 1,000,010 行记录,执行 1,000…...

3PEAK思瑞浦 TPA6531-S5TR SOT23-5 运算放大器

特性 供电电压:1.75V至5.5V 偏移电压:1.5mV(最大值) 最大可调工作频率:300kHz,斜率:0.15V/us 轨到轨输入和输出 0.1赫兹至10赫兹电压噪声:1伏峰值 开关电源时无显著输出抖动 低功耗:每通道最大25安培 工作温度范围:-40C至125C...

昇腾NPU模型服务化——从离线模型到高可用推理服务

模型训练完只是第一步。真正产生业务价值的是把模型部署成724小时在线服务——毫秒级延迟、支持动态Batching、能扛住流量洪峰,且具备高可用性。 这篇将手把手教你基于昇腾NPU构建生产级模型推理服务,涵盖框架选型、服务化架构、动态Batching优化、热加载…...

XXPermissions:Android权限管理框架的架构设计与最佳实践

XXPermissions:Android权限管理框架的架构设计与最佳实践 【免费下载链接】XXPermissions Android Permissions Framework, Adapt to Android 16 项目地址: https://gitcode.com/GitHub_Trending/xx/XXPermissions 在Android应用开发中,权限管理一…...

CMSIS-DAP调试器原理与应用:以Elektor mbed interface为例

1. 项目概述:Elektor mbed interface [150554] 是什么?如果你玩过ARM Cortex-M系列的单片机,尤其是NXP LPC800系列,那你可能对“CMSIS-DAP”这个调试器标准不陌生。它是由ARM官方推出的一个开源调试接口标准,最大的好处…...

收藏|2026年AI大模型就业爆发!岗位暴涨12倍、月薪6W+,小白零基础入门指南

2026年,AI已从“科技热点”彻底变为职场“刚需赛道”!脉脉高聘人才智库最新发布的《2026年1-2月中高端人才求职招聘洞察》,用硬核数据揭示行业真相:AI人才成招聘市场顶流,岗位量、薪资双双爆发式增长。尤其对零基础小白…...

终极解决方案:Windows Cleaner免费开源工具,3步彻底解决C盘爆红问题

终极解决方案:Windows Cleaner免费开源工具,3步彻底解决C盘爆红问题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否也经历过这样的…...

终极STL到STEP转换指南:如何实现3D打印模型到CAD设计的无缝衔接

终极STL到STEP转换指南:如何实现3D打印模型到CAD设计的无缝衔接 【免费下载链接】stltostp Convert stl files to STEP brep files 项目地址: https://gitcode.com/gh_mirrors/st/stltostp 在数字化制造和工程设计领域,STL到STEP转换已成为连接3D…...

收藏|2026年大模型算法岗崛起!程序员小白入门高薪赛道全攻略

前些年,算法岗位一直稳居技术圈高薪行列,无数程序员争相入局,也成为计算机专业毕业生求职首选方向。 伴随大模型技术飞速迭代落地,行业就业格局迎来重大变革。如今含金量最高、人才缺口最大、长期发展潜力顶尖的岗位,已…...

WarcraftHelper:让魔兽争霸3在现代电脑上完美运行的关键插件

WarcraftHelper:让魔兽争霸3在现代电脑上完美运行的关键插件 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 你是否还在为《魔兽争霸3》这…...

基于Meshtastic构建LoRa Mesh网络:从硬件自制到传感器集成实战

1. 项目概述:构建一个灵活且易用的LoRa Mesh网络 如果你对物联网、远程传感或者去中心化通信网络感兴趣,那么LoRa技术一定不会陌生。它以其超低功耗、超远距离和强大的抗干扰能力,成为了构建广域传感网络的理想选择。然而,传统的…...

Python-for-Android 完整指南:5分钟将Python应用打包为Android APK

Python-for-Android 完整指南:5分钟将Python应用打包为Android APK 【免费下载链接】python-for-android Turn your Python application into an Android APK 项目地址: https://gitcode.com/gh_mirrors/py/python-for-android Python-for-Android&#xff0…...

UE5项目打包后RenderTarget导出图片全黑?手把手教你解决伽马校正与资产打包问题

UE5打包后RenderTarget导出图片全黑的终极解决方案当你花了整整三天时间调试RenderTarget导出功能,终于在编辑器里看到完美的截图效果,却在打包成可执行文件后发现所有导出的图片都变成了一片漆黑——这种从云端跌入谷底的感觉,每个UE开发者都…...

基于Atmega 1284P的16位复古计算器:硬件设计与软件实现全解析

1. 项目概述与核心思路最近在整理工作室时,翻出了一堆老旧的7段数码管和矩阵键盘,看着这些充满复古气息的元件,一个想法冒了出来:为什么不自己动手做一台复古风格的计算器呢?不是那种用液晶屏显示的现代计算器&#xf…...

树莓派Zero离线语音交互实战:TTS与STT引擎部署与优化

1. 项目概述:为什么选择树莓派 Zero 来实现语音功能?如果你玩过 Arduino、ESP32 这类微控制器,也接触过树莓派 4B 这样的单板电脑,那你大概能理解那种“选择困难症”:微控制器实时性强、功耗低,但算力有限&…...

理想二极管控制器:用MOSFET实现毫伏级压降的电源管理方案

1. 理想二极管控制器:告别传统二极管的压降损耗 在电源设计、电池保护、太阳能板并联这些领域里,二极管是个再常见不过的元件。我们用它来防反接、做整流、实现“或”逻辑供电,几乎不假思索。但如果你设计过一个需要处理大电流、低电压的系统…...

开源三角洲机器人Delta-Robot One:从入门到精通的创客实践指南

1. 项目概述:一个为学习而生的开源三角洲机器人如果你对机器人感兴趣,但又觉得它高深莫测、无从下手,那么Delta-Robot One(我们亲切地称它为“One”)可能就是为你量身打造的入门项目。这不是一个遥不可及的工业设备&am…...

基于晶体管逻辑的水箱自动控制器设计与实现

1. 项目概述:一个基于晶体管逻辑的自动水箱/湿度灌溉控制器 如果你也像我一样,曾经为家里的花园、阳台植物或者农村老家的储水塔手动开关水泵而烦恼,那么这个项目就是为你准备的。我设计并制作了一个完全自动化的水箱水位控制器,它…...

避坑指南:Unity中AABB碰撞检测失效的5种常见原因及解决方法

Unity中AABB碰撞检测失效的深度排查与解决方案在Unity开发中,AABB(轴对齐包围盒)碰撞检测是基础但容易出问题的环节。许多开发者都遇到过这样的情况:明明逻辑正确,测试时却出现物体穿透、碰撞时有时无等诡异现象。本文…...

观察Token消耗明细,Taotoken用量看板如何帮助控制预算

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 观察Token消耗明细,Taotoken用量看板如何帮助控制预算 对于个人开发者或项目管理者而言,在使用大模型API时…...

taotoken用量看板如何帮助团队精细化管理api调用成本

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 taotoken用量看板如何帮助团队精细化管理api调用成本 对于团队管理者而言,将大模型能力集成到产品开发或业务流程中&am…...

ZYNQ中断避坑指南:PL端信号线如何正确‘连线’到PS端处理函数?

ZYNQ中断系统深度解析:从硬件信号到软件响应的全链路实践 在嵌入式系统开发中,中断处理是实时响应的核心机制。对于ZYNQ这种集成了ARM处理器(PS)和可编程逻辑(PL)的异构计算平台,其中断系统既有传统处理器的特性,又具备FPGA灵活定…...

基于Arduino UNO的真随机数生成与数据持久化在Tambola游戏机中的应用

1. 项目概述:用Arduino UNO打造一台全自动Tambola游戏机如果你玩过或者听说过Tambola(在印度非常流行的游戏,在欧美也叫Bingo或Housie),就知道它的核心玩法是主持人从一个装有数字球的容器中随机抽取号码,玩…...

基于EMA与轻量级机器学习的Wi-Fi链路质量预测实战

1. 项目概述与核心价值在工业自动化、仓储物流和智能制造等场景里,无线网络的稳定性正变得前所未有的重要。想象一下,一个自动导引运输车(AGV)正在执行物料搬运任务,或者一个机械臂正在与中央控制系统进行实时数据同步…...