yum大致的原理: 当用户使用yum对软件包进行管理时,yum会依据它的配置文件到指定的yum源去下载所有在yum源中与软件包相关的元数据信息并将这些信息缓存到本地,然后依据这些信息对软件包的依赖性进行分析并尝试将其解决,接着就是到yum源中下载相关的软件包到本地并开始安装
注:yum的配置文件/etc/yum.conf和/etc/yum.repos.d/*.repo
yum的本地缓存位置是在/etc/yum.conf当中定义的,默认位置为/var/cache/yum目录
元数据信息的存储位置是在yum源中的repodata目录当中
存储yum源位置一般是文件共享服务器(nfs, ftp, http),当然你的安装光盘镜像也能作为yum源
在这里主要介绍本地的光盘yum源与网络http的yum源搭建
由于这里使用的是rhel 6.5 (Redhat Enterprise Linux 6.5),而红帽认为yum源是收费性的服务,所以我们必须删除原来安装系统时一并安装的yum才行,否则将出现如下信息
查看安装了哪些yum软件包
# rpm -qa | grep "yum"
删除这一个yum包即可
# rpm -e yum
由于yum被其它的软件包依赖,所以在删除时要使用rpm命令的 --nodeps 选项, 这里顺便删除subscription-manager这个包,因为我们不购买红帽的服务
接下来我们在主机能够联网并且已经安装了wget工具的情况下,下载CentOS版的yum软件包
而需要下载的软件包如下:python-urlgrabber-3.9.1-11.el6.noarch.rpm
yum-plugin-fastestmirror-1.1.30-40.el6.noarch.rpm
yum-3.2.29-81.el6.centos.noarch.rpm
通过wget获取以下包# wget http://centos.ustc.edu.cn/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm