1 ,YUM Client:要保证安装有如下软件包:
yum-3.2.19-18.el5.centos
yum-metadata-parser-1.1.2-2.el5


2 ,YUM Server
:要保证安装有如下软件包:
yum-3.2.19-18.el5.centos
yum-metadata-parser-1.1.2-2.el5

yum-fastestmirror-1.1.16-13.el5.centos
yum-updatesd-0.9-2.el5

createrepo-0.4.11-3.el5
yum-arch-2.2.2-2.el5.kb.noarch.rpm (此包需要去网站下载例如http://rpm.pbone.net/

httpd-2.2.3-22.el5.centos

yum服务器的安装
存放YUM服务器上的软件包
放入CentOS5系统盘,访问/misc/cd即可看到光盘内容,或者把下载到系统ISO文件用mount –o loop 命令挂载到/mnt
再生成/data/CentOS/5.3/i386目录用于存放软件包:
CODE:
[root@test /]# mkdir -p /data/CentOS/5.3/i386
将光盘上CentOS整个目录拷入/data/CentOS/5.3/i386,因为CentOS目录中包含很多软件包,此目录约有3.5G,,所以要准备足够的空间。为了避免空间不足的问题 我是在挂载光盘后,在i386目录下建立一个CentOS目录,然后把光盘上此目录下的rpm 包链接过来。
CODE:
[root@test i386]# cd /data/CentOS/5.3/i386/CentOS/
[root@test CentOS]# ln -s /misc/cd/CentOS/* .

key文件(用于客户端与服务端的认证)拷入指定目录/data/CentOS/5.3/i386 
CODE:
[root@test i386]# cp /misc/cd/RPM-GPG-KEY-CentOS-5 .
或者此步骤也可以做链接文件
CODE:
[root@test i386]# ln -s /misc/cd/RPM-GPG-KEY-CentOS-5 .
服务端设置软件仓库及信息文件
首先,生成客户端所需的信息文件:
CODE:
[root@test i386]# createrepo -g /misc/cd/repodata/comps.xml 
/data/CentOS/5.3/i386/


这个时间比较长。。。 此操作会在目录/data/CentOS/5.3/i386/下生成repodata目录,里面都是关于rpm包的信息文件。然后再生成yum软件仓库,
CODE:
[root@test i386]# yum-arch -l /data/CentOS/5.3/i386/
时间也比较长,运行命令后会在 /data/CentOS/5.3/i386/ 下生成目录 headers 这一步是不是必须的,还请懂的人指点,谢谢

3 ,配置http服务,用于发布这些软件包:
/etc/httpd/conf/httpd.conf中进行如下配置,我用的虚拟主机,仅仅在文件末尾加入:
CODE:
<VirtualHost *:80>

ServerAdmin root

DocumentRoot /data/

ServerName 192.168.11.12
<Directory /data/>

Options Indexes FollowSymLinks

AllowOverride None
Allow from all
</Directory>
</VirtualHost>

然后保存退出,
重启http服务
CODE:
[root@test headers]# /etc/init.d/httpd restart注:如果想在IE上打开看到web服务上的目录文件或者下载等,就要确保 /data目录下没有index.php index.html 这样的文件,要不他直接显示的是这些文件的内容,不知道用修改配置文件那些参数可以避免这个问题,哈。。
4客户端配置:
在目录/etc/yum.repos.d/ 下设置


最好把原来的.repo文件备份一下:
CODE:
[root@localhost /]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# cp /etc/yum.repos.d/ CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost yum.repos.d]# vi CentOS-Base.repo
[root@localhost yum.repos.d]# cat /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS5.3-base
baseurl=http://192.168.11.12/CentOS/5.3/i386
enable=1
gpgcheck=1
gpgkey=http://192.168.11.12/CentOS/5.3/i386/RPM-GPG-KEY-CentOS-5

5测试
在客户端执行如下命令:
CODE:
yum install httpd 安装apache。
yum -y install firefox 安装自动应答为yes
yum remove httpd 删除软件包
yum clean all 清空下载的软件包的缓存
yum list 列出所有的软件包(包括已安装和在YUM服务器上存在的)
yum upgrade或yum update 升级软件包
yum list installed 列出所有已经安装的软件包
yum list available 列出所有可用的软件包
yum list updates 列出所有可升级的软件包