程序包管理之YUM解析

前言:

   yum是rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,如果直接使用rpm直接安装程序包也可以,但是需要自己手工解决程序包依赖性的问题,可能程序包的依赖性非常复杂,那么直接使用rpm安庄,就会非常麻烦,而使用YUM安装就会自动解决依赖性的问题。大大简化了安装过程。 

YUM客户端配置文件:

  /etc/yum.conf:为所有仓库提供公共配置

  /etc/yum.repos.d/*.repo:为仓库的指向提供配置

YUM的主配置文件:

blob.png

主配置文件含义:

1、cachedir:yum 缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum

2、keepcache=0:缓存是否保存,1保存,0不保存

3、debuglevel:除错级别,0-10,默认是2

4、logfile:yum的日志文件,默认是/var/log/yum.log

5、exactarch:在更新的时候,是否允许更新不同版本的RPM包,不如是否在i386上更新i686的RPM包;

6、obsoletes=1:允许更新陈旧的RPM包;

7、gpgcheck=1:是否检查GPG,一种秘钥方式签名

8、plugins=1:是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror这个插件;

9、installonly_limit=5:允许保留多少个内核包;


仓库指向的定义:

      [repositoryID]  (yum仓库的ID)

      name=some name for this repository (yum仓库的名称) 

      baseurl=url://path/to/repository/ (repodata的位置,一般指向上一级目录)

      enabled={1|0}  (1为启用,0为关闭)

      gpgcheck={1|0}  (是否检查gpgkey,1为检查0为不检查)

      gpgkey=URL     (gpgkey的路径)

yum仓库配置示例:

1、yum仓库的配置文件位于/etc/yum.repos.d目录下

blob.png

2、在该目录下新建一个new.repo的文件,文件名可以任意起,但是需要以.repo来结尾,在文件里写入yum仓库的配置信息;

blob.png

      如此yum仓库配置完成了,可以使用yum repolist命令查看yum仓库

blob.png

yum list命令可以显示所有的程序包:

凡是以@符号开头的都是已经安装上的程序包,以anaconda命名的都是在安装操作系统时安装的包

blob.png

   让我们看看yum源里都有些什么内容,在这里我们修改一下yum源的地址,在本地镜像里可以更清楚的知道源里所包含的内容:

blob.png

   从上面这幅图里我们可以看到yum源里包含rpm包的目录,repodata索引目录,GPGKEY文件,这三者用于支撑yum的运行

   索引是通过计算rpm包的元数据而生成的,yum通过索引来做安装、卸载、查询rpm包的,如果缺少索引文件也就是repodata文件,yum就无法正常工作,接下来我们在额外的路径下下载一些rpm包,手工生成repodata文件,并写入yum仓库的配置文件,该文件下只包含rpm包和repodata索引文件,看看是否能运行yum仓库:

  

示例:

1、该目录下只有四个rpm包:

blob.png

2、将rpm包移入新建文件夹Packages,并使用createrepo命令创建repodata索引文件

blob.png

3、修改yum配置文件,指向新的路径

blob.png

4、yum list

blob.png

5、尝试安装varnish的rpm包

blob.png

安装成功!我们自己手工制作的yum仓库配置完成。

原创文章,作者:因为有你,如若转载,请注明出处:http://www.178linux.com/39659

赞 (0)
因为有你因为有你
上一篇 2016-08-24 21:22
下一篇 2016-08-24 21:22

相关推荐

  • 推荐-DNS架设实验

    DNS架设实验 实验拓扑 实验准备 流程 测试 总结 实验拓扑: 1.对于来自内网的DNS正反向解析,并实现view选择指定解析库解析。2.对于来自外网的DNS正向解析,并实现view选择指定解析库解析。3.实现主从服务器结构。4.实现一个完成对一个子域的授权。5.子域中的所有查询xiao.com.的信息都转向192.168.1.1解析。 1.根据view,…

    2016-04-19
  • SELinux介绍

    SELinux介绍 SELinux: Secure Enhanced Linux, 是美国国家安全局(NSA=The National Security Agency)和SCC(Secure Computing Corporation)开发的 Linux的一个强制访问控制的安全模块。 2000年以GNU GPL发布, Linux内核2.6版本后集成在内核中D…

    Linux干货 2016-10-08
  • Linux用户及文件权限管理

    Linux,用户,用户组,文件,权限

    Linux干货 2017-10-29
  • Linux学习之课前环境安装调试

    系统安装,VNC,VMware软件安装

    2018-03-26
  • linux再次入门

               时隔一年,重新拾起Linux,从头开始再学一遍            现在来总结一下曾经可能听说过但是我以前绝对不会的命令(尴尬脸) 克隆窗口:右键单击点克隆窗口(真是…

    2017-07-15
  • Linux之SELinux

      Linux之SELinux     本文包括以下内容SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助   SELinux介绍SELinux: Secure Enhanced Linux,是美国国家安全局(NSA=The National Se…

    Linux干货 2016-09-21

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-26 14:06

    内容整体很完整,图文结合,通过实际操作验证了自己的想法,且总结成为经验,这是个很好习惯,希望坚持下去哦。