不包含源服务器信息,构建本地 YUM 源服务器(适用与为不用版本的rhel做源)

构建本地 YUM 源服务器

创建多个 repository 仓库信息文件

设置多个YUM 源位置

(为拥有大量的RHEL不同版本服务器环境下可配置此环境;

此文档与前面不同的是多了仓库信息文件与源位置)

此文档没有详细的写明,只用了一张rhel5u4的盘下所有目录,相同道理,如果有5U3的话,只需新建一个5u3目录把rpm包放入此目录 并在5u3目录下创建 repository 仓库信息文件

本例中使用 RHEL5 安装光盘(DVD)中的软件包组成软件仓库,并结合 VSFTPD 服务,提供基于 FTP 方式的简易 YUM 源。实现的主要步骤如下。

1. 安装 vsftpd、createrepo 软件包

createrepo 工具主要用于收集目录中 rpm 包文件的头信息,以创建 repodata 软件仓库数据(经 gzip 压缩的 xml 文件)。

yum服务端应安装以下软件

createrepo-0.4.4-2.fc6.noarch.rpm

[root@yumserver ~]# mkdir -p /media/cdrom

[root@yumserver ~]# mount /dev/cdrom /media/cdrom

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@yumserver ~]# cd /media/cdrom/Server/

[root@yumserver Server]#rpm -ivh vsftpd-2.0.5-10.el5.i386.rpm

2. 准备软件库目录

注意要保证/var/ftp/rhel5 目录有足够的可用空间(在本例中最好大于 3GB),以便存放复

制的软件包。必要时可以使用单独的硬盘分区(挂载到/var/ftp/rhel5 目录中)。

[root@yumserver Server]# mkdir -p /var/ftp/rhel5/

[root@yumserver Server]# cp -r /media/cdrom/* /var/ftp/rhel5/

查看复制好的目录结构:Cluster、ClusterStorage、Server、VT——主要是光盘中包含 rpm软件包的几个文件夹)。

[root@yumserver Server]# ls -lh /var/ftp/rhel5/ | grep ^d

drwxr-xr-x 3 root root 6.0K 2007-03-18 Cluster

drwxr-xr-x 3 root root 6.0K 2007-03-18 ClusterStorage

drwxr-xr-x 4 root root 2.0K 2007-03-18 images

drwxr-xr-x 2 root root 2.0K 2007-03-18 isolinux

drwxr-xr-x 3 root root 330K 2007-03-18 Server

drwxr-xr-x 3 root root 6.0K 2007-03-18 VT

3. 创建 repository 仓库信息文件

在各个软件包目录中分别执行 createrepo 命令,生成当前目录下的 repodata 数据。使用-g 选项可以指定用于创建组信息的 xml 文件模板。

[root@yumserver ~]# cd /var/ftp/rhel5/Cluster/

[root@yumserver Cluster]# createrepo -g repodata/comps-rhel5-cluster.xml ./

[root@yumserver Cluster]# cd /var/ftp/rhel5/ClusterStorage/

[root@yumserver ClusterStorage]# createrepo -g repodata/comps-rhel5-cluster-st.xml ./

[root@yumserver ClusterStorage]# cd /var/ftp/rhel5/Server/

[root@yumserver Server]# createrepo -g repodata/comps-rhel5-server-core.xml ./

[root@yumserver Server]# cd /var/ftp/rhel5/VT/

[root@yumserver VT]# createrepo -g repodata/comps-rhel5-vt.xml ./

4. 配置启动 vsftpd 服务(开启默认的匿名 FTP 服务即可)

[root@yumserver ~]# service vsftpd start

若 FTP 服务无法访问,请参考以下配置重新启动 vsftpd 服务:

[root@yumserver ~]# vi /etc/vsftpd/vsftpd.conf

anonymous_enable=yes

local_enable=NO

write_enable=no

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

pasv_enable=YES

pasv_max_port=3200

pasv_min_port=3100

xferlog_std_format=YES

listen=YES

listen_address=192.168.0.11        //服务器的 IP 地址

pam_service_name=vsftpd

tcp_wrappers=yes

[root@yumserver ~]# service vsftpd restart

5  客户端 使用 yum 工具安装软件

在RHEL5 系统中由默认安装的yum-3.0.1-5.el5 软件包提供

6  设置 YUM 源位置

使用 YUM 源服务器之前,必须为客户端建立指定的配置文件,设置好源服务器的位置和可用目录等选项。

[root@client ~]# cd /etc/yum.repos.d/

[root@client yum.repos.d]# vi rhel-debuginfo.repo

[Cluster]

name=Cluster Directory

baseurl=ftp://192.168.16.192/rhel5/Cluster

enabled=1        //启用该目录

gpgcheck=0        //不检查 gpg key

[ClusterStorage]

name=ClusterStorage Directory

baseurl=ftp://192.168.16.192/rhel5/ClusterStorage

enabled=1

gpgcheck=0

[Server]

name=Server Directory

baseurl=ftp://192.168.16.192/rhel5/Server

enabled=1

gpgcheck=0

[VT]

name=VT Directory

baseurl=ftp://192.168.16.192/rhel5/VT

enabled=1

gpgcheck=0

[root@client yum.repos.d]# yum clean all                //更新缓存