步骤
找个地方存你的rpm包
#我创建了一个rpm文件夹存放我的rpm包
makdir -p /opt/repo/rpm
createrepo
这个很重要,一定要安装
# 我的能连外网,所以直接yum安装,你的自己想办法
yum install createrepo -y
创建repodata
安装了createrepo后,系统就多了一个createrepo的命令,用他来创建repodata
注意了,更新rpm包后要重新执行 createrepo /your_path
# 创建方法是 createrepo + 路径(存放rpm包的路径上一层或和rpm包在同一层都可以)
createrepo /opt/repo
#或者
cd /opt/repo
createrepo ./
nginx
非必须,只要能提供一个访问路径就行了
最简单的用centos7自带的python SimpleHTTPServer模块启动也行
总的来说就让你访问了地址能列出本地的文件列表就ok,当然你访问的列表必须有repodata
用python
- 优点:快
- 缺点:服务重启了你要手动来启服务
# 进入的repodata所在的目录,不是进入到repodata,执行下面的命令
cd /opt
python -m SimpleHTTPServer 80
#你要写的好一点能在后台运行自己加nohup 啥的,不说了
# nohup python -m SimpleHTTPServer 80 &
# 因为的repodata是在/opt/repo下,所以我访问时加一个上下问
curl http://192.186.100.100/repo
算了说nginx
repo.conf
server {
listen 80;
server_name yum.example.com;
location /repo {
alias /opt/repo;
autoindex on; # 允许列出目录中的文件
}
}
启动ngix,略
配置yum源
vi /etc/yum.repos.d/local-repo.repo
# 文件名称local-repo.repo
# .repo文件内容如下
[myrepo]#爱叫啥叫啥,我的是myrepo
name=Local registry #随你喜欢,反正没人看
baseurl=http://192.168.100.100/repo #这里配置成你访问了能展示repodata的路径
enabled=1 #1启用,0禁用 这个yum源
gpgcheck=0 #不检查,你自己搞的仓库也没配置检查的东东
检查是否生效
- 检查你的配置是否被读取到了
yum repolist | grep myrepo #查询一下我上面配置的东东,查到就对了,查不到就检查你的配置
- 清空yum缓存
yum clean all
- 建yum源缓存
# 要是你配置的yum源比较多,建议先禁用一下
yum-config-manager --disable '*' #禁用所有
yum-config-manager --enable myrepo # 把你自己建的启用
yum makecache # 建一下缓存
yum list | grep myrepo #理论上就能查到你的自己的rpm包了
安装测试
略