什么是yum源?

        yum(全称yelllow  dog  Updater, Modified),是一个基于rpm包的软件安装管理器,通常用于redhat、fedora、centos、SUSE等发行版linux中。能够从指定的服务器自动下载rpm包并且安装,还能自动处理解决依赖关系。

优点:
方便的添加、删除、更新软件包
可以同时配置多个软件资源库
配置简介/etc/yun.conf
自动解决依赖关系
保持与RPM数据库一致

 

 
Yum源配置文件及所需软件
配置文件介绍:  /etc/yum.conf   软件源服务配置文件
[main]                                                                                主配置
cachedir=/var/cache/yum/$basearch/$releasever        缓存目录
keepcache=0                        是否保持安装成功后的包和首部缓存,1为保持,0为不保存
debuglevel=2                       调试信息输出等级,1-10,默认为2
logfile=/var/log/yum.log            yum的日志文件
exactarch=1                    包升级时,精确匹配硬件平台
obsoletes=1                    升级后是否删除没有的包,0为不删除,1为删除
gpgcheck=1                        安装软件包时,是否检测gpg签名,0为不检测,1为检测
plugins=1                            yum插件是否可用,0不可用,1为可用
installonly_limit=3

 
redhat5及其以上版本,默认已经安装yum软件,可用直接使用
[root@station25 ~]# rpm   -qa|grep yum
yum-metadata-parser-1.1.2-16.el6.i686
PackageKit-yum-0.5.8-19.el6.i686
yum-3.2.29-17.el6.noarch
PackageKit-yum-plugin-0.5.8-19.el6.i686
yum-utils-1.1.30-6.el6.noarch
yum-rhn-plugin-0.9.1-26.el6.noarch

 
创建索引文件命令   createrepo
安装所需软件:createrepo-*.rpm

 

 
yum源分类:本地yum源、ftp方式yum源、http方式yum源
(一)本地yum源搭建方式
1,建立yum仓库目录
    #mkdir   /yum
 
2,挂载镜像到yum仓库目录
#moung  -o  loop   rhel5u5.iso   /mnt
3,复制光盘内容到yum仓库目录
#cp  -r  /mnt/*    /yum
4,修改服务配置文件    /etc/yum.conf(一般不需要修改)
将gpgcheck修改为0,不检查gpg秘钥
gpgcheck=1

 
注意:因为使用的是光盘源作为yum仓库源,所以默认包含了repository软件依赖关系文件,不需要手动生成。
如果是网上下载的软件包制作为yum源仓库,需要手工创建repository依赖关系文件
#createrepo      -g              /yum/       创建文件
#createrepo    --update    /yum         更新依赖关系文件

 

 
客户端使用    yum    源仓库的配置: 修改文件    /etc/yum.repo.d/xxx.repo。
首先将该目录下的*.repo文件改名,添加后缀名,如:*.repo.bak。新建我们需要的repo配置文件。
如:
# vim    /etc/yum.repos.d/newyum.repo 
[rhel-Server]                            自定义的仓库名称
name=RHEL5/Server            自定义说明
baseurl=file:///yum/Server        指定使用的协议和yum源所在位置
enabled=1                                是否启用该yum仓库,1为使用,0为不使用
gpgcheck=0                            是否进程gpg秘钥检查,1为检查,0为不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release          指定gpg秘钥所在位置

 
说明:
baseurl=    一栏是指定使用何种yum源
file        表示使用本地yum源,格式为    file://源路径
ftp        表示使用ftp协议方式获得yum源,格式为    ftp://sourceIP/repository目录
http        表示使用http协议方式获得Yum源,格式为    http://sourceIP/repository目录

 
gpgcheck=        一栏表示是否秘钥检测,如果需要检查,可以手工导入秘钥
#rpm    --import    /etc/pki/rpm-gpg/gpg秘钥文件名

 
在/etc/yum.repo.d/目录下,最好只存在一个后缀名为 repo的文件,其他的文件改名,防止干扰。

 

 
Ftp方式yum源搭建
        本地yum源仅限本地主机使用,如果需要给局域网内其他主机使用搭建yum源,那么需要通过网络协议将yum源共享出去,给其他主机使用。如:ftp方式,http方式

 
(1)安装ftp服务软件包——vsftpd
#mount     -o    loop    rhel5u5.iso    /mnt
#rpm    -ivh    /mnt/Server/vsftpd-2.0.5-16.el5.i386.rpm

 
(2)在ftp共享数据目录下新建yum仓库目录,将iso镜像内容拷贝到仓库目录
#mkdir    /var/ftp/rhel5yum
#cp    -r    /mnt/*    /var/ftp/rhel5yum

 
(3)启动vsftpd服务
#service    vsftpd    restart

 
客户端使用时,只需将/etc/yum.repo.d/目录下  *.repo文件的baseurl改为ftp方式即可使用
假如:yum仓库源主机IP为10.1.1.10,客户端配置应如下:
[rhel-Server]                            自定义的仓库名称
name=RHEL5/Server            自定义说明
baseurl=ftp://10.1.1.10/rhel5yum/Server        指定使用的协议和yum源所在位置
enabled=1                                是否启用该yum仓库,1为使用,0为不使用
gpgcheck=0                            是否进程gpg秘钥检查,1为检查,0为不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release          指定gpg秘钥所在位置

 

 
客户端使用测试命令

 
yum的缓存文件/var/cache/yum:
yum    clean    packages    清除缓存包
yum    clean    headers        清除缓存rpm头文件
yum    clean    all                    清除所有缓存

 
yum源仓库rpm包列表:
yum    list
yum    grouplist
yum    list    package_name
yum    list    updates                    列出可以更新的包
yum    list    installed                列出已经安装的包
yum    list    extras                    列出已经安装但不属于yum仓库的包

 
查看yum仓库中rpm包的信息:
yum    info    package_name            查看yum参考中指定包的信息
yum    groupinfo    group_name

 
rpm包的更新:
yum    check-update           检查是否有更新的rpm包
yum    update                        更新所有软件包
yum    update    package_name        更新指定软件包

 
使用yum安装与卸载软件包:
yum    install    package_name
yum    groupinstall    group_name
yum    remove    package_name
yum    groupremove    group_name

 

 

 
扩展:使用互联网yum源

 
 
如网易yum源:http://mirrors.163.com    和搜狐Yum源  http://mirrors.sohu.com
访问这两个站点,将repo配置文件下载到本地/etc/yum.repo.d/目录下即可使用
如:在浏览器访问:http://mirrors.163.com

 

 
找到可以供rhel使用的centos或fedora,点击右边的centoss使用帮助

 

 
根据使用说明,先备份指点的repo文件,再选择下载下面提供的repo文件,选择centos5或centos6

 

 
会自动弹出下载框,下载repo文件,然后移动到/etc/yum.repo.d目录下

 
测试使用
yum    clean all
yum    list