标签:yum源
yum源的搭建可分为两种方法:
使用本地镜像进行搭建,镜像中的rpm版本比较旧
搭建Apache服务器
挂载ISO镜像,将镜像中的包放至Apache服务器目录下
用yum源服务器的包同步到本地
在Apache服务器目录下建立对应目录
用rsync同步
一、使用本地镜像
搭建Apache服务器
使用yum安装,安装目录是/etc/httpd/,安装完毕后修改/etc/httpd/conf/httpd.conf文件。
启动Apache服务
#/etc/init.d/httpd start
如果开启了防火墙,添加防火墙规则
iptables -A INPUT -p tcp --dport 80 -j ACCEPT。注意,你在Apache中配置开放了那个端口,iptables就允许那个端口进入,iptables设置完毕,使用/etc/init.d/iptables save保存。
2、挂载镜像
进入/var/www/html/目录,创建Centos6目录,在centos目录下,创建extra,update,x86_64三个平行目录。
将centos6的镜像挂载到某一目录下,然后将Packages目录中的所有包都拷贝至/usr/local/apache/htdocs/x86_64下。
依次对三个目录进行createrepo操作,目的是生成repodata目录,自动创建索引信息。
[root@localhost ~]# yum install createrepo -y
[root@localhost ~]# createrepo -pdo /var/www/html/Centos6.6/extra /var/www/html/Centos6.6/extra
[root@localhost ~]# createrepo -pdo /var/www/html/Centos6/x86_64 /var/www/html/Centos6/x86_64
[root@localhost ~]# createrepo -pdo /var/www/html/Centos6/updates /var/www/html/Centos6/updates
执行完毕后在x86_64、extra、updates下自动生成了repodata目录,此时yum源已经搭建完毕。
3、客户端访问yum源服务器
查询yum源服务器的ip地址,然后在客户端的/etc/yum.repos.d创建base.repo文件.这里需要特别注意,如果Apache服务器开启的端口不是80端口,那么在写baseurl的时候需要将端口号写出来,否则客户端默认访问的80端口!
[root@localhost yum.repos.d]# cat base.repo
[base]
name=local
baseurl=http://172.16.0.253:80/Centos6/x86_64
enable=1
gpgcheck=0
[extra]
name=local
baseurl=http://172.16.0.253:80/Centos6/extra
enable=1
gpgcheck=0
[updates]
name=local
baseurl=http://172.16.0.253:80/Centos6/updates
enable=1
gpgcheck=0
此时整个过程已经完毕,客户端可以使用yum安装软件包。如果有新的包添加进了x86_64、extra、updates的任意一个目录中,都需要createrepo --update dir来更新yum源服务器的索引。客户端也需要yum makecache一下。
二、使用yum源服务器
之前说过ISO镜像中的软件包过于陈旧,那么可以将其他yum源服务器的包同步到本地,可以使用rsync命令直接镜像过来
http://mirror.nsc.liu.se/centos-store
http://mirrors.neusoft.edu.cn
具体镜像方法:
1、进入本地yum源服务器需要镜像的目录
2、访问http://mirror.nsc.liu.se/centos-store目录可以发现有很多的数字目录,这些都是不同的centos版本
3、进入到对应版本的目录
4、找到正确的路径后就可以开始同步了
在本地yum源服务器上输入
[root@localhost yum.repos.d]# rsync -avrt --delete rsync://mirror.nsc.liu.se/centos-store/6.6/extras/x86_64/Packages/ /var/www/html/Centos6/extra
-a --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,
-v 传输时的进度等信息
-r, --recursive 对子目录以递归模式处理
--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
这样会删除目录下与同步网站不相同的文件,然后从网址上将rpm包同步下来
同步完毕后使用createrepo --update /var/www/html/Centos6/extra更新索引。
本文出自 “炸酱面” 博客,请务必保留此出处http://yangzhuo.blog.51cto.com/6038033/1956397
标签:yum源
原文地址:http://yangzhuo.blog.51cto.com/6038033/1956397