软件包管理—yum

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件包管理—yum相关的知识,希望对你有一定的参考价值。

基础概念

yum是一个基于C/S架构的软件包的前端管理工具。它是基于rpm包管理的封装,解决了rpm包安装过程中的依赖关系的问题。

yumserver端: 

   其实质是一个文件服务器,主要功能:

     1、利用yum的文件共享机制,将各个rpm包共享给客户端使用。

     2、共享文件依赖关系、安装之后所生成的文件列表信息的元数据。

   共享协议:

     ftp, http, nfs, file(用于本地yum-repo)

yumclient端:

   主要功能:

     1、编辑配置文件,指定可用的repo

     2、缓存元数据,包括软件包的依赖关系、软件包安装之后生成的文件列表信息。

     3、分析元数据,根据具体操作分析以上的元数据信息。

     4、执行具体操作,如安装,卸载,查询等。

  访问服务端repo的方式:

     1http://server-ip/path/to/repo

     2ftp://server-ip/path/to/repo

     3nfs://server-ip/path/to/nfs

     4file:///path/to/repo

yum配置文件

  1/etc/yum.conf :核心配置文件

  2/etc/yum.repos.d/*.repo:组成核心配置文件的各个repo配置文件,常编辑此文件来指定客户端所依赖的repository

yum配置文件*.repo的配置操作

 必须字段:

  [repo-ID]

  name=repo-string(可以有空格的存在)

  baseusrl=服务端的repo的访问路径

  Enabled={0|1} 是否启用该repo

  Gpgcheck={0|1} 是否进行来源合法性和文件完整性检验

  Gpgkey=服务端的repo中的公钥检测文件,若gpgcheck=0,则不必要配置该项。

如下是本人在本主机上使用本repo,编写的yum源:

[[email protected] ~]# df
Filesystem                   1K-blocks    Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root   6926264 1744892   4829528  27% /
tmpfs                           243140       0    243140   0% /dev/shm
/dev/sda1                       495844   33472    436772   8% /boot
/dev/sr0                       3762278 3762278         0 100% /media/rhel6.5
[[email protected] ~]# cat /etc/yum.repos.d/centos.repo 
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///media/rhel6.5
enabled=1
gpgcheck=0

yum配置文件中的宏的含义

使用宏的好处,方便该yum可以在不同平台之间使用。

$releaserver: 指发行版,如redhat6.5 , $releasever=6

$arch: 系统架构。

$basharch: 系统基本架构,如i586i686的基础架构是i386

yum的具体使用

命令: yum  [option]  COMMAND  Pkgname

COMMAND:

  install: 安装软件包,可以是repo中,也可以是本地的软件包。

  erase/remove:卸载软件包,同时会卸载存在依赖关系的软件包。

  repolist [all|enabled|disabled]:列出【所有|可用|不可用】可用repo

  clean [all|pkgs|metdate...]:清除【所有||元数据...】的缓存。

  list [all|installed|available]:列出【所有|安装|未安装】的软件包。

  reinstall:重新安装软件包。

  update:升级软件包,update Pkg-version:升级到指定版本。

  updateinfo:查看repo的升级信息。

  check-update:查看可升级的软件包。

  downgrade  pkg-version:降级软件包。

  whatprovides/provide /path/to/somefile:查看某文件属于哪个软件包。

  deplist:查看软件包的依赖关系。

  grouplist:列出软件包组信息。

  groupinstall:安装软件包组。

    history:查看yum以前执行的操作。

   [option]:

    -y: 自动回答问题为yes。

自建yum仓库(以web服务器为例)

   1、将软件包下载指/var/www/html

   2、createrepo /var/www/html/Pkg-dir

   经过以上两步就创建好了repo,就可以本地或者通过web服务器共享使用该repo。

本文出自 “11219885” 博客,请务必保留此出处http://11229885.blog.51cto.com/11219885/1750678

以上是关于软件包管理—yum的主要内容,如果未能解决你的问题,请参考以下文章

Linux学习:软件包管理+常用命令

Linux学习命令汇总七——软件包管理(rpm包 yum repo源码包管理及相关命令)

36.Linux软件管理--YUM工具

喵呜:Linux环境基础开发工具使用篇之Linux 软件包管理器 yum

Linux系统中程序的安装及管理创建私有yum仓库实验

YUM仓库配置及命令详解