ISO光盘镜像作为yum本地仓库(适用于不能联外网的环境):

1、  禁用所有可用的yum仓库,为方便演示,直接全部删除:

# cd /etc/yum.repos.d

# ls

# rm -rf *

2、  创建光盘挂载点,挂载光盘:

# mkdir -pv /mnt/localiso

# mount /dev/cdrom /mnt/localiso

wKiom1jbFguz3P_jAACrWScDZJE983.jpg

3、  添加本地yum仓库:

# cd /etc/yum.repos.d

# vim Local-ISO.repo

[CentOS6-iso]

name=CentOS-$releasever-$basearch-iso

baseurl=file:///mnt/localiso

enabled=1

gpgcheck=1

gpgkey=file:///mnt/localiso/RPM-GPG-KEY-CentOS-6

4、  重建元数据缓存,更新yum仓库:

# yum clean all

# yum makecache

# yum repolist

# yum list

CentOS四种方法自建yum仓库_第1张图片

5、  使用本地yum仓库:

# yum -y install tree

CentOS四种方法自建yum仓库_第2张图片

 

使用第三方aliyunCentOS仓库:

1、  备份原有仓库:

# mv /etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup

2、  下载aliyunrepo

  • CentOS 5# wget-O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-5.repo

  • CentOS 6# wget-O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-6.repo

  • CentOS 7# wget-O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo

3、  生成元数据缓存:# yum makecache

 

使用http协议和ftp协议自建yum仓库:

1、  关闭SELinuxiptables

2、  禁用所有可用的yum仓库,为方便演示,直接全部删除:

# cd /etc/yum.repos.d

# ls

# rm -rf *

3、  安装相关软件包(一定要按照此顺序安装):

# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm           //createrepo依赖软件包

# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm     //createrepo依赖软件包

# rpm -ivh createrepo-0.9.9-24.el6.noarch.rpm                    //用于生成元数据

# rpm -ivh httpd-2.2.15-56.el6.centos.3.x86_64.rpm               //用于搭建http协议的文件服务器

# rpm -ivh vsftpd-2.2.2-21.el6.x86_64.rpm                       //用于搭建ftp协议的文件服务器

4、  创建存放软件包的目录:

# mkdir -pv /var/www/html/CentOS/6/x86_64/

# chown -R apache.apache /var/www/html

# mkdir -pv /var/ftp/pub/centos/6/x86_64/

5、  在软件包存放目录中上传需要安装的软件包,此处为了演示,复制光盘ISO中的软件包:

# mkdir -pv /mnt/dvd

# mount /dev/sr0 /mnt/dvd

# mount  -->  /dev/sr0 on /mnt/dvd type iso9660 (ro)

# cp -a /mnt/dvd/Packages/* /var/www/html/CentOS/6/x86_64/

# cp -a /mnt/dvd/Packages/* /var/ftp/pub/centos/6/x86_64/

6、  创建元数据,生成repodata目录:

# createrepo /var/www/html/CentOS/6/x86_64/

# createrepo /var/ftp/pub/centos/6/x86_64/

CentOS四种方法自建yum仓库_第3张图片

备注:repodata目录是一个数据库,描述了一个rpm包的详细信息,如依赖关系、包含文件、校验码信息等

7、  启动httpd服务和vsftpd服务:

# vim /etc/httpd/conf/httpd.conf -->  ServerName localhost:80

# service httpd start

# netstat -lntup|grep 80

# service vsftpd start

# netstat -lntup|grep 21

8、  配置自建的yum仓库:

  • http协议文件服务器:

# cd /etc/yum.repos.d

# vim myhttp-CentOS6.repo

[myhttp-CentOS-6-x86_64]

name=myhttp-CentOS-$releasever-$basearch

baseurl=http://192.168.1.144/CentOS/6/x86_64/

enabled=1

gpgcheck=0

CentOS四种方法自建yum仓库_第4张图片

  • ftp协议文件服务器:

# cd /etc/yum.repos.d

# vim myftp-centos6.repo

[myftp-centos-6-x86_64]

name=myftp-centos-$releasever-$basearch

baseurl=ftp://192.168.1.144/pub/centos/6/x86_64

enabled=1

gpgcheck=0

CentOS四种方法自建yum仓库_第5张图片

9、  可以配置epel源,此处略

10、重建元数据缓存,更新yum仓库:

# yum clean all

# yum makecache

# yum repolist

# yum list

CentOS四种方法自建yum仓库_第6张图片

11、测试使用:

# yum -y install zsh

CentOS四种方法自建yum仓库_第7张图片