yum的管理以及构造自己的yum源

引 入

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的shell前端软件包管理器。它的出现解决了rpm包依赖的问题,文本在此将介绍yum的一些常用命令以及怎么构造一个自己的本地yum源。


一、yum命令的用法: 

yum [options] [command] [package ...]

显示仓库列表:
    repolist [all|enabled|disabled]
    
显示程序包:
    list

安装程序包:
    install package1 [package2] [...]
    reinstall package1 [package2] [...]  (重新安装)

升级或降级程序包:
    update [package1] [package2] [...]
    downgrade package1 [package2] [...] (降级)

检查可用升级:
    check-update

卸载程序包:
    remove | erase package1 [package2] [...]

查看程序包information:
    info [...]

查看指定的特性(可以是某文件)是由哪个程序包所提供:
    provides | whatprovides feature1 [feature2] [...]

清理本地缓存:
    clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

构建缓存:
    makecache

查看指定包所依赖的capabilities:
    deplist package1 [package2] [...]

包组管理的相关命令:一个包组整合了实现某一特定需求功能的一系列包的集合!
    * groupinstall group1 [group2] [...]
    * groupupdate group1 [group2] [...]
    * grouplist [hidden] [groupwildcard] [...]
    * groupremove group1 [group2] [...]
    * groupinfo group1 [...]


二、yum的配置文件:

配置文件:
        /etc/yum.conf:为所有仓库提供公共配置
        /etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库指向的定义:
        [repositoryID]-----》ID,标示一个repo库,可自定义,但不可有重复的ID
        name=Name     -----》name,repo库的名字,可自定义
        baseurl=url://path/to/repository/  ---》url,repo的路径,可支持http,ftp,file等格式
        enabled={1|0}     ----》标示此库是否启用,1为启用,默认启用
        gpgcheck={1|0}    ----》标示此库是否启动完整性校验,1为需要校验
        gpgkey=URL        ----》秘钥的路径
        enablegroups={1|0}   ---》是否启动组功能
        failovermethod={roundrobin|priority} ---》 默认为:roundrobin,意为随机挑选;


三、配置本地ISO的yum源步骤:

1.    挂载本地ISO光驱

mount -r /dev/cdrom1  /mnt

wKiom1Z6qg3BRq4ZAAAoWC5Dkpo484.png

可以看到ISO光驱已经成功挂载道/mnt目录下。

2.    新建配置文件

wKioL1Z6rMyB8xxZAAAma1DzVdg304.png 我们先到/etc/yum.repos.d/这个目录下,里面有一些以.repo结尾的文件,这些就是yum源的配置文件,定义了默认的一些yum源,其中CentOS-Base.repo这个文件里面有一些启用的需要网络环境的yum源,所以我们把它换成CentOS-Base.repo.bak以作备份用。

 3.    定义repo库及检查yum源的建立

yum repolist

wKioL1Z-BcLCJRHiAAA2A06tnHU757.png

在/etc/yum.repos.d/下新建以repo结尾的普通文件,例如timber.repo,定义ID等相关必须属性后,可以直接采用“makecache”命令来构建缓存,也可以直接用yum repolist命令查看,上图可以看到我们成功构建了ID为myISO的本地源。

4.    通过yum安装sendmail来测试ISO的yum源

yum install -y sendmail

wKioL1Z-CgzwihZGAABsfg5WEYY213.png

可以看到,我们通过上面配置的本地ISO的yum源成功安装了sendmail,同时还安装了其依赖包promail。


四、创建自己的yum源:

有些时候,我们可以用自己收集整理的rpm包,来构造自己的yum源,这也很简单。下面是主要步骤:

1.    找到收集的rpm包的位置

wKioL1Z-FCyzv4GmAADLFOqqBfk777.png

/media/myYumRepo是我的rpm包收集目录,其中有xen这个虚拟机监视器软件。

2.    创建yum仓库

createrepo /media/myYumRepo

wKiom1Z-GZCyP74hAABV5_OWvMw040.png

通过createrepo命令,生成了repodata目录,这目录下面是一些yum源相关的配置文件。如果没有createrepo命令,可用yum install -y createrepo 来安装。

3.    定义repo库及检查yum源的建立

wKiom1Z-G2qi7uZEAAA0v1HWZ74821.png

在前面的timber.repo上新定义ID为mySelfYum的库,当然你也可以新建一个以.repo为后缀名的文件来定义。用yum repolist可以看到mySelfYum这个源已经添加成功。

4.     检查xen的安装包

yum list xen

wKiom1Z-Ip-xdLuBAAAh2POtxsE282.png

可以看到,xen的安装包在mySelfYum这个库下,说明自己创建的yum源可用。至此,我们就成功创建了自己的yum源。


后  记

    yum是一款好用的软件包管理工具,可以帮我们轻松安装各种软件包,我们也可以构建各种根据个人需求的yum源,我们应该熟练掌握各种基本操作以及能构造yum源。yum用法是简单的,不过简单往往意味着不灵活,对于一些对各种安装配置选项有着更高要求的软件包,我们应该采用源码方式来安装,这个话题我们下一篇来阐述。


附:如对上面描述有疑问,期待与朋友您共同探讨。本人QQ:1084569767

你可能感兴趣的:(yum,构造自己的yum源)