我们使用ftp的方式来实现安装源的更新,也就是说,我们要将yum的软件库放置在ftp的目录中,这样子的话,我们就需要2个工具来完成这件事,这2个工具都可以从光盘中很方便的获得:

*vsftpd-2.0.5-12.el5.i386.rpm ------>ftp软件包

*createrepo-0.4.11-3.el5.noarch.rpm ------>用于生成本地源

a.安装vsftpd,创建最基本的ftp服务器(因本例中使用ftp工具,如使用其他方式,可选装其他工具包)

#rpm -ivh /misc/cd/Server/vsftpd-2.0.5-12.el5.i386.rpm

安装完毕后,只需要启用服务,就可以正常使用,这里只需我们了解使用ftp目录来存放数据的就可以了,其他ftp控制暂不考虑。

#service vsftpd start ------->启动vsftpd服务

#chkconfig vsftpd on ------->使服务在下次启动时依然生效

b.安装createrepo工具,以便于稍后使用它来创建更新源 (这一步骤,在rhel5.1之后的版本(不含5.1),可以省略,但不推荐省略!)

#rpm -ivh /misc/cd/Server/createrepo-0.4.11-3.el5.noarch.rpm

c.复制光盘内容到ftp目录下:

#cp -R /mnt/* /var/ftp/pub

这里主要担心SELinux以及文件夹自身的权限问题对文件夹及ftp服务器的访问控制,所以使用-R递归的来将权限改成对应的========================================================

快速方法: 把光盘里的Server文件夹 复制到 你要制作YUM源的文件夹本篇为

:/var/ftp/pub 

然后运行createrepo -v /var/ftp/pub/

3>用 createrepo -v /var/ftp/pub/ 来重建索引文件.

会在/var/ftp/pub下生成一个repodata目录,

如果提示有.olddate,就删除之后再运行一遍createrepo命令

4>然后重新启动vsftpd服务就可以了service vsftpd start
这样服务器端就配置好了.
================================================

d.使用工具创建更新源

#createrepo -g /mnt/Server/repodata/comps-rhel5-server-core.xml /var/ftp/pub/Server

#createrepo -g /mnt/VT/repodata/comps-rhel5-vt.xml /var/ftp/pub/VT

#createrepo -g /mnt/Cluster/repodata/comps-rhel5-cluster.xml /var/ftp/pub/Cluster

#createrepo -g /mnt/ClusterStorage/repodata/comps-rhel5-cluster-st.xml /var/ftp/pub/ClusterStorage

这4步,执行下来,会花掉你一定的时间,长短的大部分取决于你机器的性能,如果没有什么高级应用的话,建议只做第一个就OK,其余的涉及到虚拟化,群集,及存储的软件可以暂不考虑,但这几个步骤只是操作上有些区别,原理一样,都是依赖于下面的说明........

说明: -g参数指定的是,依照RHEL提供的组依赖性文件(comps*.xml),重组软件包在复制后位置上的依赖性问题,前面已经提到过,在RHEL5.1版本中,是必不可少的一个步骤,至于其后的RHEL系统版本,不进行如上d步骤操作也OK。

到这时,vsftpd服务启动后,YUM就算是完成了服务器的配置!

-----------------------------------------------------------------------------

4.配置YUM客户端文件 -----> /etc/yum.repos.d/*.repo

在RHEL5中,所有处于/etc/yum.repos.d/这个目录下的,以.repo结尾的文件,都叫yum更新配置文件(注意这里,为什么我们没有说成是扩展名为repo)

注意一下,我们可以将rhel-debuginfo.repo当成是模板文件,复制一个server.repo进行具体设置即可

以下源定义,根据光盘目录的架构,此4个源为光盘中4个软件包目录。 本例中我们以ftp方式作为介绍对象,其他方式作相应改变:

[Server] ----------------------------------------->更新源的名字

name=Red Hat Enterprise Linux 5 Server ----------------->相当于是注释,comment

baseurl=ftp://192.168.5.254/pub/Server ----------------->此关键字指明具体的源位置

enabled=1 ----------------->0|1 是否启用源 0,禁用 1,启用

gpgcheck=1 ----------------->是否做gpg检查

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release --->gpg检查时所参照的gpg-key

如果你在创建安装源的时候,只做了1个关于Server目录的操作的话,那么下面几个你就不用再加装进了,具体情况,具体对待

[VT]

name=Red Hat Enterprise Linux 5 VT

baseurl=ftp://192.168.5.254/pub/VT

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[Cluster]

name=Red Hat Enterprise Linux 5 Cluster

baseurl=ftp://192.168.5.254/pub/Cluster

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[ClusterStorage]

name=Red Hat Enterprise Linux 5 ClusterStorage

baseurl=ftp://192.168.5.254/pub/ClusterStorage

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

---------------------------------------------------------------------------------