一、yum本地源
由于网络速度等原因,centos中的yum源,以及RHEL使用CentOS的yum源作为升级源,都会占用太多的时间。
也有人会用光盘作为本地的yum源,但是每次将光盘传到服务器上挂载也是比较麻烦的。
为解决上述问题,特制作yum局域网内的升级源。有需要的朋友可以参考下。
二、Yum简介原理
yum 是 yellowdog updater modified 的缩写。yellowdog 是一个 linux 的 distribution(分布),RH 将这种升级技术利用到自己的 distribution 形成了现在的 yum。
yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个 distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了 Linux 用户一直头痛的 dependencies 的问题。
一般这类软件通过一个或者多个配置文件描述对应的 repository 的网络地址,通过 http 或者 ftp 协议在需要的时候从 repository 获得必要的信息,下载相关的软件包。这样,本地用户通过建立不同的repository 的描述说明,在有 Internet 连接时就能方便进行系统的升级维护工作。
repository 是用 yum-arch 或者 createrepo 命令创建的,也可以用别人已有的 repository 作为镜像,这里部探讨如何建立一个 repository。
三、所需软件
createrepo.noarch --- 用于生成repodata 数据库,生成依赖性关系
vsftpd --- 用户提供局域网的FTP服务
四、安装createrepo和vsftpd并配置FTP服务器
1、安装
rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
rpm -ivh vsftpd-2.0.5-16.el5_4.1.i386.rpm
上面的软件包在光盘或者是网上都有,可以直接下载使用。
2、配置
vsftp的匿名用户为linux系统的ftp用户,可以修改/etc/passwd,将ftp用户的home目录从/var/ftp更改为你的目标路径。这里改为/usr/ISO
启动vsftp:service vsftpd start;chkconfig vsftp -lists 35 on
注意:注意修改/usr/ISO的目前权限。
有关vsftpd虚拟用户的配置,请参考如下文章:
vsftpd虚拟用户创建实例
vsftpd配置虚拟用户无法登录(530 Login incorrect)的解决方法
vsftpd虚拟用户配置的总结
CentOS 5.3建立Vsftpd虚拟用户
CentOS6.2 x64 下 配置vsftpd虚拟用户服务器
vsftpd下创建虚拟用户的方法
vsftpd+pam创建虚拟用户登录FTP服务器
vsftpd+mysql 虚拟用户认证配置实例
vsftp 虚拟用户高级设置
五、生成yum源
1、CentOS
挂载镜像文件:mount -o loop /usr/linuxiso/CentOS-5.5-x86_64-bin-DVD.iso /mnt/
复制镜像文件:cp -r /mnt/* /usr/ISO/5-64/CentOS/
注意:因为centos的光盘中默认有repodata这个目录和下面的文件了,因此这里不需要再生成了。
2、RHEL
挂载镜像文件:mount -o loop rhel-server-5.5-x86_64-dvd.iso /mnt1
复制镜像文件:cp -r /mnt1/* /usr/ISO/5-64/RHEL/
生成repodata:
#cd /usr/ISO/5-64/RHEL/
#createrepo .
默认就会在/usr/ISO/5-64/RHEL/中生成repodata,下面有filelists.xml.gz other.xml.gz primary.xml.gz repomd.xml四个文件。
对于其他光盘也可以采用类似的方式实现,这里不再赘述。
3、对局域网内yum的解释和说明
ftp://192.168.5.118/4-32/CentOS --centos 4 32位的升级源
ftp://192.168.5.118/4-32/RHEL --RHEL 4 32 位的升级源
ftp://192.168.5.118/5-32/CentOS --centos 5 32位的升级源
ftp://192.168.5.118/5-32/RHEL --RHEL 5 32 位的升级源
ftp://192.168.5.118/4-64/CentOS --centos 4 64位的升级源
ftp://192.168.5.118/4-64/RHEL --RHEL 4 64 位的升级源
ftp://192.168.5.118/5-64/CentOS --centos 5 64位的升级源
ftp://192.168.5.118/5-64/RHEL --RHEL 5 64 位的升级源
六、客户端的配置
1、安装yum包
这里不在赘述,对centos默认安装就有,但是对于RHEL的,请在网上下载相应的yum套装进行安装。
2、配置客户端
此后,即可以轻松使用yum进行升级了。
注意:系统的yum配置文件,请根据自己系统的版本,在 五-3 中选择自己的升级源。
3、对以上配置文件的注释
[c4-media]
name=RHEL-4 - Media
# 192.168.5.118是Yum源地址
baseurl=ftp://192.168.5.118/4-32/RHEL
# 是否开启源
enabled=1
#是否验证. 可不要
gpgcheck=1
#验证的密钥. 可不要
gpgkey=ftp://192.168.5.118/4-32/RHEL/RPM-GPG-KEY