安装createrepo工具并创建本地仓库目录,将RPM包放入;2. 使用createrepo生成元数据,可选添加分组信息;3. 配置本地repo文件指向目录;4. 清理缓存并测试安装;5. 可选通过HTTP共享仓库。

在内网环境或离线服务器中,搭建本地Yum源可以极大简化软件包的安装与管理。通过
createrepo工具生成元数据,我们可以将本地目录变为可被yum识别的软件源。
1. 准备工作:安装createrepo工具
确保系统已安装
createrepo,它用于生成Yum仓库所需的元数据文件。
在CentOS/RHEL系统中运行:
yum install -y createrepo
如果系统未联网,需提前下载
createrepo及其依赖(如
python-deltarpm、
delog等),手动安装。
2. 创建本地仓库目录并放入RPM包
选择一个目录作为本地仓库的根目录,例如
/data/yum-repo:
mkdir -p /data/yum-repo
将需要的RPM包复制到该目录中:
cp /path/to/your/rpms/*.rpm /data/yum-repo/
也可以挂载ISO镜像获取基础包:
mount /dev/cdrom /mnt
cp /mnt/Packages/*.rpm /data/yum-repo/
3. 使用createrepo生成元数据
进入仓库目录,运行
createrepo命令生成repodata:
createrepo /data/yum-repo/
首次创建会扫描所有RPM包并生成索引文件。若后续添加了新包,可更新元数据:
createrepo --update /data/yum-repo/
支持分组信息(可选):若想支持
yum groupinstall,需提供
comps.xml文件(通常从ISO的repodata中提取):
createrepo -g /data/yum-repo/repodata/comps.xml /data/yum-repo/
4. 配置本地Yum源文件
在客户端或本机的
/etc/yum.repos.d/目录下创建repo文件:
vim /etc/yum.repos.d/local.repo
写入以下内容:
[local-repo] name=Local Yum Repository baseurl=file:///data/yum-repo enabled=1 gpgcheck=0
说明:
-
baseurl:使用
file://
协议指向本地路径 - gpgcheck=0:关闭GPG校验(若未导入GPG密钥)
- 如需启用GPG,可设置
gpgcheck=1
并指定gpgkey
5. 测试本地Yum源
清除缓存并重建元数据:
yum clean all
yum makecache
列出可用包或安装测试:
yum list available | grep your-package-name
yum install your-package -y
若看到来自
local-repo的包,说明配置成功。
6. (可选)通过HTTP/FTP共享仓库
若想让多台机器使用该仓库,可通过Web服务共享:
yum install -y httpd
systemctl start httpd
ln -s /data/yum-repo /var/www/html/yum
其他机器配置repo时使用:
baseurl=http://your-server-ip/yum
基本上就这些。只要RPM包齐全,元数据正确,本地Yum源就能稳定工作,特别适合无外网环境的批量运维。注意定期更新repodata,保持仓库同步。










