仓库配置是什么
软件包从哪里来由仓库配置决定:RHEL 系是 /etc/yum.repos.d 下的 repo 文件,Debian 系是 /etc/apt/sources.list 与 sources.list.d 下的片段。启用或禁用某个源、指定镜像地址与校验密钥都在这里完成。配置写错最典型的症状是地址 404 或校验失败——包明明存在,却怎么也装不上。
基本信息
| 适用平台 | RHEL 系用 dnf 或 yum 读取 repo 文件;Debian 系用 apt 读取源列表 |
|---|---|
| 配置位置 | /etc/yum.repos.d 下的 repo 文件;/etc/apt/sources.list 与 sources.list.d |
| 关键字段 | baseurl 或 deb 行、enabled 启用开关、gpgcheck 校验开关、gpgkey 公钥位置 |
| 生效方式 | 修改后刷新索引即可,不需要重启服务 |
典型使用场景
- 接入内网镜像:把默认源换成公司内网地址
- 启用额外源:需要补充软件包时增加新的仓库
- 临时禁用源:排查依赖冲突时先关掉可疑的源
- 限定来源:把某类包固定到指定仓库
- 校验供应链:确认签名校验开启并配好公钥
RHEL 系 repo 模板
RHEL 系 repo 模板
[epel]
name=Extra Packages for Enterprise Linux
baseurl=https://mirrors.example.com/epel/9/Everything/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-9Debian 系源模板
Debian 系源模板
# /etc/apt/sources.list.d/internal.list
deb https://mirrors.example.com/ubuntu noble main restricted universe
deb https://mirrors.example.com/ubuntu noble-updates main restricted生效与验证
生效与验证
dnf repolist -v
dnf config-manager --set-disabled epel
apt update && apt-cache policy nginx关键字段
| 字段 | 作用 | 提示 |
|---|---|---|
| baseurl | 仓库地址 | 变量写错会直接 404 |
| enabled | 是否启用该源 | 0 表示禁用 |
| gpgcheck | 是否校验签名 | 建议保持开启 |
| gpgkey | 公钥位置 | 校验失败时先查这里 |
| 优先级或 pin | 多源冲突时决定取哪个 | 需要额外配置 |
改完先刷新索引再装包。内网镜像同步滞后时新版本可能一时找不到,策略上要区分稳定源与临时源,并记录临时源的启用时间。
发行版代号与架构占位符写错会让地址拼成无效路径,保存前先用 curl 访问一次该地址,确认能正常取到索引文件。
改动仓库配置属于高风险操作:先在测试机验证,并保留原文件备份。排查时用源列表命令确认最终生效的仓库,因为可能存在多份片段互相覆盖。
配置多个来源时要明确谁优先:有的系统靠字段声明优先级,有的靠文件名顺序,混用时最终装到哪个包可能不符合预期。改完先刷新索引再查看候选版本,确认来源正确后才安装。内网镜像同步存在延迟时,新版本包找不到属于同步问题,不要先去改配置。