🗣 Wd提问: 搭建内网yum源服务器
🤖 Ai回答: 搭建内网 YUM 源服务器是一个常见的企业级运维需求,尤其在无法直接访问公网的环境下,通过本地搭建 YUM 源可以实现软件包的离线安装和管理。以下是详细的搭建步骤(以 CentOS/RHEL 系统为例):
🌐 一、准备工作
1、选择一台服务器作为 YUM 源服务器
操作系统:CentOS 7/8 或 RHEL 7/8
网络:建议配置为内网 IP,确保客户端能访问
硬盘空间:至少需要 50GB 以上(根据镜像大小调整)
2、下载官方镜像或使用现有系统
可从 [CentOS 官方镜像站](https://www.centos.org/download/) 或 [阿里云镜像站](https://mirrors.aliyun.com/centos/) 下载 ISO
或使用已安装的系统作为源服务器
📦 二、搭建 YUM 源服务器
方法一:使用 `createrepo` 手动搭建(推荐)
1、安装必要的工具
bash
yum install -y createrepo httpd
2、创建目录结构
bash
mkdir -p /var/www/html/centos/7/os/x86_64/
假设你使用的是 CentOS 7,架构为 x86_64
3、挂载或复制 ISO 文件
bash
挂载 ISO
mount -o loop /path/to/CentOS-7-x86_64-DVD.iso /mnt
复制内容
cp -r /mnt/* /var/www/html/centos/7/os/x86_64/
4、生成本地仓库元数据
bash
cd /var/www/html/centos/7/os/x86_64/
createrepo .
`createrepo` 会生成 `repodata` 目录,包含所有元数据
5、启动并配置 Apache
bash
systemctl start httpd
systemctl enable httpd
6、防火墙放行 HTTP
bash
firewall-cmd permanent add-service=http
firewall-cmd reload
方法二:使用 `rsync` 同步官方镜像(推荐用于长期维护)
1、安装 rsync
bash
yum install -y rsync
2、同步官方镜像(以 CentOS 7 为例)
bash
rsync -avz rsync://mirror.centos.org/centos/7/os/x86_64/ /var/www/html/centos/7/os/x86_64/
注意:同步过程可能较慢,建议在非高峰时段执行
3、生成元数据
bash
cd /var/www/html/centos/7/os/x86_64/
createrepo .
4、启动 Apache
bash
systemctl start httpd
🔧 三、配置客户端使用内网 YUM 源
1、修改客户端的 YUM 配置文件
bash
vi /etc/yum.repos.d/local.repo
添加如下内容:
ini
[local]
name=Local CentOS Repository
baseurl=http://<YUM_SERVER_IP/centos/7/os/x86_64/
enabled=1
gpgcheck=0
替换 `<YUM_SERVER_IP` 为你的 YUM 服务器 IP 地址
2、清理并测试
bash
yum clean all
yum makecache
yum list | grep centos-release
🛠️ 四、高级功能(可选)
1、使用 `httpd` 提供多个版本支持
bash
/var/www/html/centos/
├── 7/
│ ├── os/
│ ├── extras/
│ └── ...
└── 8/
├── os/
└── ...
2、使用 `dnf`(CentOS 8 / RHEL 8)
bash
dnf install -y dnf-plugins-core
dnf makecache
3、使用 `yum-utils` 管理仓库
bash
yum install -y yum-utils
🔄 五、定期更新 YUM 源
1、编写定时任务(每日同步)
bash
crontab -e
添加:
bash
0 2 * * * rsync -avz rsync://mirror.centos.org/centos/7/os/x86_64/ /var/www/html/centos/7/os/x86_64/ && createrepo /var/www/html/centos/7/os/x86_64/
注意:同步前确保目标目录已存在
✅ 六、验证与排错
常见问题排查:
| 问题 | 解决方法 |
| `403 Forbidden` | 检查 Apache 权限、SELinux 设置 |
| `Could not retrieve metalink` | 检查 `repodata` 是否生成 |
| `Connection refused` | 检查防火墙、Apache 是否运行 |
| `GPG key not available` | 设置 `gpgcheck=0` 或导入 GPG key |
📌 七、推荐镜像源(国内可用)
| 镜像站 | 地址 |
| 阿里云镜像 | `http://mirrors.aliyun.com/centos/` |
| 网易镜像 | `http://mirrors.163.com/centos/` |
| 清华大学镜像 | `https://mirrors.tuna.tsinghua.edu.cn/centos/` |
📦 八、扩展:搭建本地 RPM 包仓库
如果你有自定义 RPM 包,也可以添加到仓库中:
bash
mkdir -p /var/www/html/custom/
cp *.rpm /var/www/html/custom/
createrepo /var/www/html/custom/
然后在客户端配置:
ini
[custom]
name=Custom RPM Repository
baseurl=http://<YUM_SERVER_IP/custom/
enabled=1
gpgcheck=0
✅ 总结
| 步骤 | 内容 |
| 1 | 准备服务器,安装 `httpd` 和 `createrepo` |
| 2 | 下载或同步 CentOS/RHEL 镜像 |
| 3 | 生成 `repodata` |
| 4 | 启动 Apache,配置防火墙 |
| 5 | 客户端配置本地仓库 |
| 6 | 定期同步更新 |
✅ 搭建完成后,内网所有主机均可通过 `yum install` 安装软件,无需联网,提高安全性与效率。
如需支持更多版本(如 CentOS Stream、RHEL、EPEL),可进一步扩展。
需要我提供自动化脚本或 Docker 部署方案吗?欢迎继续提问!
📣 商家广告:





0
IP地址: 139.3.107.18
搜索次数: 1
提问时间: 2025-11-11 11:27:42
🛒 域名购买:
3qk.cn
afuncard.com
jamctr.com
j-f.com.cn
guzun.cn
lw.biz
xq.gs
g-a.com.cn
sxny.net
3.ln.cn
❓️ 热门提问:
关键词广告优化公司
店铺代理托管
知识付费源码SEO设置
vps配置网站
流媒体直播服务器rtmp搭建
网站服务器一年多少钱
精控机柜
虚拟主机或者云主机
关于注册域名
VPS配置域名解析
豌豆Ai站群搜索引擎系统
🌐 域名评估:
lnev.cn
22.cn
691.net.cn
qget.cn
su8.org.cn
lygqn.com
uav.hn.cn
ubuk.cn
sanzhan.net
ylkk.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
霸屏网站
厂家定制月饼
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。