搭建一个基于http的yum服务器

基于httpyum服务器

在集群中搭建一个基于HTTPyum服务器,不仅安装速度变快了许多,还能扩展自己定制的rpm包放入yum服务器中,其他服务器只需要正常使用yum install即可批量安装统一经过定制的rpm包。这篇文章对习惯使用yum的人来说,以后对很多机器需要进行安装软件很方便

 

先安装一个web软件,apachenginx都可以,我使用的是nginx

nginx编译安装文档 

http://www.cnblogs.com/czlun/articles/7119297.html

扩展(可选):

nginx开启文件目录列表显示功能 

http://www.cnblogs.com/czlun/articles/7698504.html

 

开始搭建yum源服务器

第一步 创建目录

web根目录下创建centosplusextrasupdatesos四个目录

mkdir -p /data/wwwroot/yum-server

#虚拟主机的路径需要设置为该路径

cd /data/wwwroot/yum-server

mkdir centosplus  extras  updates  os

#这四个目录用来区分类型

for DIR in $(ls); do cd $DIR; mkdir Packages; cd ..; done

#分别在四个目录下创建存储rpm包的目录

 

第二步 获取rpm包

现在我们要获取yum服务向外提供的rpm

方法一 下载iso,并从iso镜像里拷贝(推荐)

wget http://mirror.nsc.liu.se/centos-store/7.2.1511/isos/x86_64/CentOS-7-x86_64-Everything-1511.iso

mount CentOS-7-x86_64-Everything-1511.iso /mnt

cp /mnt/Packages/* /data/wwwroot/yum-server/os/Packages/

方法二 利用rsync同步至本地(不推荐)

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/os/x86_64/Packages/ /data/wwwroot/yum-server/os/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/extras/x86_64/Packages/ /data/wwwroot/yum-server/extras/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/updates/x86_64/Packages/ /data/wwwroot/yum-server/updates/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/centosplus/x86_64/Packages/ /data/wwwroot/yum-server/centosplus/Packages/

该方法不推荐的原因很简单,慢。

 

第三步 创建仓库

对三个目录使用createrepo创建仓库(生成repodata目录)

yum install -y createrepo

createrepo -o /data/wwwroot/yum-server/os /data/wwwroot/yum-server/os/Packages/

createrepo -o /data/wwwroot/yum-server/extras /data/wwwroot/yum-server/extras/Packages/

createrepo -o /data/wwwroot/yum-server/updates /data/wwwroot/yum-server/updates/Packages/

createrepo -o /data/wwwroot/yum-server/centosplus /data/wwwroot/yum-server/centosplus/Packages/

 

#-o 指定repodata生成的目录

此时yum服务器已经搭建完成

 

客户端配置

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

> /etc/yum.repos.d/CentOS-Base.repo

cat >> /etc/yum.repos.d/CentOS-Base.repo << eof

[base]

name=CentOS-$releasever - Base

baseurl=http://192.168.127.200/os/

enabled=1

gpgcheck=0

 

#released updates

[updates]

name=CentOS-$releasever - Updates

baseurl=http://192.168.127.200/updates/

enabled=1

gpgcheck=0

 

#additional packages that may be useful

[extras]

name=CentOS-$releasever - Extras

baseurl=http://192.168.127.200/extras/

enabled=1

gpgcheck=0

 

#additional packages that extend functionality of existing packages

[centosplus]

name=CentOS-$releasever - Plus

baseurl=http://192.168.127.200/centosplus/

enabled=1

gpgcheck=0

eof

 

yum clean all

yum makecache

#yum服务器内容修改了之后或者修改了yum源文件,客户机需要重新建立缓存

#baseurl指向仓库(repodata)所在的目录

 

若是要保持本地yum源于网络yum源同步,则可以将

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/os/x86_64/Packages/ /data/wwwroot/yum-server/os/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/extras/x86_64/Packages/ /data/wwwroot/yum-server/extras/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/updates/x86_64/Packages/ /data/wwwroot/yum-server/updates/Packages/

rsync -avz --delete rsync://mirrors.ustc.edu.cn/centos/7/centosplus/x86_64/Packages/ /data/wwwroot/yum-server/centosplus/Packages/

加入定时任务。

 

镜像站点与本地路径对应的目录:

http://mirrors.ustc.edu.cn/centos/7/的基础上

os/x86_64/Packages/ 对应 /data/wwwroot/yum-server/os/Packages/

updates/x86_64/Packages/ 对应 /data/wwwroot/yum-server/updates/Packages/

extras/x86_64/Packages/ 对应 /data/wwwroot/yum-server/extras/Packages/

centosplus/x86_64/Packages/ 对应 /data/wwwroot/yum-server/centosplus/Packages/

 

yum服务器内容修改了之后,需要更新仓库

createrepo --update /data/wwwroot/yum-server/os

createrepo --update /data/wwwroot/yum-server/centosplus

createrepo --update /data/wwwroot/yum-server/extras

createrepo --update /data/wwwroot/yum-server/updates

更新了仓库,客户机也需要重新建立缓存

yum clean all

yum makecache

 

到这里,我们的yum服务器及客户机的配置都已经完成了。

 

转载于:https://www.cnblogs.com/czlun/articles/7702060.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值