Anolis OS 8.6 本地 YUM 源搭建完整指南
以下是搭建本地 YUM 源的详细步骤(支持离线环境):
1️⃣ 准备工作
# 创建仓库目录
mkdir -p /opt/repos/anolis8.6/{BaseOS,AppStream}
# 挂载 ISO(物理机)
mount -o loop /path/to/AnolisOS-8.6-x86_64-dvd.iso /mnt
# 或复制 ISO 内容(推荐)
cp -r /mnt/* /opt/repos/anolis8.6/
2️⃣ 安装必要工具
# 安装 createrepo 工具
dnf install -y createrepo_c
3️⃣ 创建仓库元数据
# 为 BaseOS 生成元数据
createrepo_c /opt/repos/anolis8.6/BaseOS
# 为 AppStream 生成元数据
createrepo_c /opt/repos/anolis8.6/AppStream
4️⃣ 创建 YUM 配置文件
cat > /etc/yum.repos.d/anolis-local.repo << 'EOF'
# 本地 BaseOS 仓库
[local-baseos]
name=Anolis OS 8.6 Local BaseOS
baseurl=file:///opt/repos/anolis8.6/BaseOS
enabled=1
gpgcheck=0
# 本地 AppStream 仓库
[local-appstream]
name=Anolis OS 8.6 Local AppStream
baseurl=file:///opt/repos/anolis8.6/AppStream
enabled=1
gpgcheck=0
EOF
5️⃣ 验证与测试
# 清除缓存
dnf clean all
# 列出可用仓库(应看到 local-baseos 和 local-appstream)
dnf repolist
# 测试安装软件
dnf install -y --disablerepo=* --enablerepo=local-* tree
💻 关键目录结构示例
/opt/repos/anolis8.6/
├── BaseOS/
│ ├── Packages/ # RPM 包存放位置
│ └── repodata/ # 自动生成的元数据
│ ├── repomd.xml # 核心元数据文件
│ ├── primary.xml.gz
│ └── ...
├── AppStream/
│ ├── Packages/
│ └── repodata/
└── ... # 其他组件目录(如 extras)
⚠️ 常见问题解决
-
权限问题:
chmod -R 755 /opt/repos/anolis8.6 restorecon -Rv /opt/repos/anolis8.6 # SELinux 环境 -
路径格式错误:
- 确保
baseurl使用三斜杠:file:/// - 路径结尾必须有
/:.../BaseOS/
- 确保
-
更新仓库:
# 添加新 RPM 后更新元数据 createrepo_c --update /opt/repos/anolis8.6/BaseOS -
HTTP 访问(可选):
# 安装 web 服务 dnf install -y httpd systemctl enable --now httpd # 创建软链接 ln -s /opt/repos/anolis8.6 /var/www/html/repos # 修改 baseurl baseurl=http://localhost/repos/BaseOS/
✅ 验证命令
# 检查仓库元数据
ls -l /opt/repos/anolis8.6/*/repodata/repomd.xml
# 详细仓库信息
dnf repoinfo local-baseos
# 测试依赖解析
dnf --disablerepo=* --enablerepo=local-* install nginx
提示:对于生产环境,建议添加 GPG 签名:
- 将 ISO 中的
RPM-GPG-KEY-ANOLIS复制到/etc/pki/rpm-gpg/- 在
.repo文件中添加:gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ANOLIS
按照此流程操作,即可成功搭建可用的本地 YUM 源。其他仓库(如 PowerTools/Extras)使用相同方法添加即可。
浙公网安备 33010602011771号