yum源安装是我们工作中常用的一种方式,它是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

在CentOS7里面还有一种更加新颖的安装方式(dnf安装),本篇主要讲解yum安装。在yum源安装之前我们必须对yum命令掌握。下面就来谈谈yum命令的用法和yum源安装。

一、yum命令的用法

yum命令的语法格式:yum [options] [command] [package ...]

[options]

-y:对所有的提问都回答“yes” -c, --config=[config file]:指定配置文件 -q:安静安装模式 -v:详细安装模式 -d:设置调试等级(0-10) -e:设置错误等级(0-10) -R:设置yum处理一个命令的最大等待时间;


-C:完全从缓存中运行,而不去下载或者更新任何头文件


-h:显示帮助信息--nogpgcheck:禁止进行gpg check; --disablerepo=repoidglob:临时禁用此处指定的repo --enablerepo=repoidglob:临时启用此处指定的repo --noplugins:禁用所有插件

[command]

显示仓库列表
   repolist [all|enabled|disabled]
显示程序包:list
   list [all | glob_exp1] [glob_exp2] [...]
   list {available|installed|updates} [glob_exp1] [...]
安装程序包:
   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 ]all:清除缓存目录下的软件包及旧的headers
packages:清除缓存目录下的软件包
headers:清除缓存目录下的headers
metadata:清除元数据
expire-cache:清除失效缓存
rpmdb:对数据库操作
plugins:清除插件

构建缓存:

  makecache

搜索包:

  search string1 [string2] [...]

  [以指定的关键字搜索程序包名及简要信息]

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

查看yum事务历史:
        history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]

安装及升级本地程序包:
     * localinstall rpmfile1 [rpmfile2] [...]
            (maintained for legacy reasons only - use install)
     * localupdate rpmfile1 [rpmfile2] [...]
            (maintained for legacy reasons only - use update)
包组管理的相关命令:
     * groupinstall group1 [group2] [...]
     * groupupdate group1 [group2] [...]
     * grouplist [hidden] [groupwildcard] [...]
     * groupremove group1 [group2] [...]
     * groupinfo group1 [...]

--------------------------------------------------------------

二、yum仓库搭建的补充知识点【对于理解yum命令和yum仓库的搭建很重要】

    1、什么是云仓库? yum仓库里面的repodata文件是干什么的

        yum仓库:存储了众多的rpm包,以及包的相关的元数据文件(放置于特定目录下)       

        repodata文件:拿来放相关元数据的,比如yum仓库里面包的依赖关系就放在这里面

    2、yum客户端配置文件详解(man yum.conf 里面有详解)

/etc/yum.conf  :是为所有仓库提供公共配置【或者不属于仓库的配置,即yum命令的配置】
 /etc/yum.repos.d/*.repo:为仓库的指向提供配置  
   

 注意:修改了配置文件,要先启用配置文件:yum repolist
仓库指向定义详解:
 [repositoryID]
 name=Some name for this repository
 baseurl=url://path/to/repository/
 enabled={1|0}
 gpgcheck={1|0}
 gpgkey=URL
 repo-gpgcheck    检查元数据的gpg信息的来源合法性
 enablegroups={1|0}   是否基于组来批量管理程序包
 failovermethod={roundrobin|priority}   故障转移方法
        默认为:roundrobin,意为随机挑选;
 cost=        开销
        默认为1000
 bandwidt 指明时长带宽
 username
 password

       

        3、创建yum仓库总结:

        (1)把程序包打包在一个目录下面
        (2)创建元数据文件:createrepo [options] <directory>
        (3)创建特征码: createrepo FILE   [FILE是放包的文件夹,他会自动生成公秘]
        (4)编辑配置文件:/etc/yum.repos.d/CentOS-Base.repo
        (5)运行命令通过配置文件获取全部包: yum repolist
        (6)直接安装本地包