讲师中心 微信公众号
AI工具推荐 视频效率加速

CentOS 7怎么修改具体的系统软件源仓库优先级及依赖包自动选择策略

星枫君_5496

星枫君_5496

发布时间:2026-08-13 11:25:07

|

211人浏览过

|

来源于php中文网

原创

必须安装yum-plugin-priorities插件并启用,所有启用仓库需显式设置priority值(越小优先级越高),修改后须执行yum clean all && yum makecache刷新缓存才能生效。

centos 7怎么修改具体的系统软件源仓库优先级及依赖包自动选择策略

必须先装 yum-plugin-priorities 插件

CentOS 7 默认不启用仓库优先级功能,光改 priority= 参数没用。不装插件,yum 完全忽略 priority 字段。

装插件前先确认是否已存在:

yum list installed | grep priorities

没输出就装:

yum install -y yum-plugin-priorities

装完检查插件是否启用:

cat /etc/yum/pluginconf.d/priorities.conf

确保里面是:

[main]
enabled=1

如果 enabled=0 或文件不存在,手动创建或修改为 enabled=1。

/etc/yum.repos.d/ 里每个 .repo 文件都要设 priority

只给某个仓库(比如 [base])加 priority 不够——yum 是按整个 repo 文件生效的,同一个文件里多个 section 共享同一优先级逻辑,但插件会逐 section 比较。

常见错误:只改了 CentOS-Base.repo 里的 [base],却忘了 [updates] 和 [extras],结果更新时还是从低优先级仓库拉包。

  • 数值越小,优先级越高(不是越大):建议 priority=1 给可信主源,priority=10 给 EPEL,priority=20 给第三方源
  • 所有启用的仓库(enabled=1)都应显式设置 priority,否则插件可能拒绝操作并报错:Warning: Skipping unreadable repository 'xxx' 或直接跳过该仓库
  • 本地镜像源(如挂载 ISO 的 CentOS-Media.repo)建议设 priority=1,但要确保 gpgcheck=0 或已导入对应 GPG key,否则校验失败会中断安装

用 yum-config-manager --setpref 修改优先级容易踩坑

这个命令看似方便,但它依赖 yum-utils 包,且只写入 .repo 文件的末尾注释区,不保证覆盖已有 priority 行。实测中常出现“执行成功但实际没生效”。

Zynq Linux Hardware Debug
Zynq Linux Hardware Debug

Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。

下载

更可靠的做法是直接编辑文件:

sed -i '/^\[/a\priority=1' /etc/yum.repos.d/CentOS-Base.repo

但注意:这会在每个 section 开头插入,需人工核对位置;推荐用 vi 手动加在每个 [xxx] 下一行,例如:

[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
priority=1

别漏掉 gpgcheck 和 gpgkey 配置——改源后若 key 路径不对或 key 丢失,yum install 会卡在签名验证,报错:GPG key retrieval failed。

yum clean all && yum makecache 不是可选步骤

改完所有 .repo 文件和插件配置后,必须强制刷新缓存。否则 yum repolist 显示的仍是旧元数据,priority 不参与排序。

执行顺序不能颠倒:

yum clean all
yum makecache

验证是否生效:

yum repolist --verbose | grep -A2 'Repo-id'

你会看到每行末尾带 priority=N,且数字与你设置一致。如果某 repo 没显示 priority,说明它没被插件识别——大概率是该 repo 文件里缺 enabled=1,或插件没启用,或 priority 写错位置(比如缩进、写在注释后)。

真正起作用的是插件 + 显式 priority + 缓存重建三者同时到位。少一个,yum 就退回“谁先响应谁上”的随机行为。

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
centos
centos

PHP中文网为大家提供centos相关信息,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,是免费的、开源的、可以重新分发的开源操作系统,PHP中文网提供centos相关文章,以及安装教程。

3389

2023.06.16

常见的linux系统有哪些
常见的linux系统有哪些

linux系统有Ubuntu、Fedora、CentOS、Debian、openSUSE、Arch Linux、Gentoo、Slackware、Linux Mint、Kali Linux。更多关于linux系统的文章详情请阅读本专题下面的文章。php中文网欢迎大家前来学习。

6501

2023.10.27

CentOS安装部署教程精选
CentOS安装部署教程精选

CentOS安装部署专题提供 CentOS Stream 9/10 服务器安装与初始化配置教程,涵盖 ISO 镜像下载、系统分区、最小化安装、网络配置、SSH远程连接、防火墙、软件源、时区同步、用户权限和常见安装故障排查,适合新手搭建 Linux 服务器环境及运维人员快速部署 CentOS 系统。

174

2026.05.29

CentOS运维命令大全
CentOS运维命令大全

CentOS运维命令专题整理 CentOS 服务器日常管理常用命令,覆盖系统信息查看、用户与权限管理、服务启动停止、进程监控、端口查看、日志分析、磁盘空间清理、软件包安装、定时任务配置和故障排查方法,帮助运维人员高效完成 CentOS 系统维护工作。

188

2026.05.29

CentOS建站环境搭建实战教程
CentOS建站环境搭建实战教程

CentOS建站环境专题围绕服务器网站部署场景,系统讲解在 CentOS 上安装和配置 Nginx、Apache、PHP、MySQL、MariaDB、PHP-FPM、SSL证书、网站目录权限、虚拟主机、反向代理和 WordPress 等常见建站环境,适合个人站长和运维人员搭建稳定 Web 服务。

223

2026.05.29

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

20

2026.10.16

OpenJDK怎么配置Java开发环境
OpenJDK怎么配置Java开发环境

怎样用OpenJDK搭建开发环境?本专题介绍版本选择、下载安装、环境变量配置和编译运行验证,帮助你理清JDK的作用及基本配置流程,并通过简单程序检查环境是否可用,为后续项目开发做好准备。

20

2026.10.16

OpenJDK怎么部署Java应用
OpenJDK怎么部署Java应用

Java项目开发完成后,怎样部署到目标环境并正常运行?本专题介绍OpenJDK应用部署流程,涵盖运行环境准备、版本兼容检查、应用打包、启动参数配置和日志查看,帮助你理清部署前后的操作顺序,减少环境差异造成的运行问题。

0

2026.10.16

Revel框架模板渲染与表单验证
Revel框架模板渲染与表单验证

本专题围绕Revel框架视图层开发,介绍模板语法、变量输出、布局复用、表单提交、参数绑定与验证规则,帮助开发者完成安全规范的页面交互。

20

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CentOS 官方文档
CentOS 官方文档

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn