[关闭]
@mritd 2016-07-31T16:34:06.000000Z 字数 5898 阅读 1883

yum 笔记

Linux


一、软件包管理概述

在漫长的 Linux 发展史中,由于 Linux 系统的特性,所有软件都为绿色的,编译成二进制解压后即可运行,所以软件安装和管理成了一个复杂的体力劳动,而软件包管理器应运而生。

1.1、相关术语概述

软件编译主要考虑以下两个因素 :

1.2、软件包组成部分

1.3、应用管理器功能

应用管理器一般应该实现以下功能 :

1.4、常用的软件包管理器

常用发行版都有其自己的软件包管理器,如 :

常用的软件包管理器都具备以下功能 : 打包、安装、查询、升级、卸载、校验、数据库管理

包管理器虽然解决了软件包的管理混乱问题,但是其无法解决包分发等问题,因此出现了基于软件包管理器的前端管理器,如 Debian 系列的 apt-get、RadHat 系列的 yum

二、rpm 使用

2.1、rpm 术语和概述

rpm 全称 RadHat Package Manager,后经过 Linux 基金委员会吸纳为标准包管理工具,重新定义为 RPM is Package Manager.

2.2、rpm 常用命令

2.2.1、安装和卸载

2.2.2、查询

  1. Name : docker
  2. Version : 1.10.3
  3. Release : 44.el7.centos
  4. Architecture: x86_64
  5. Install Date: 20160725 星期一 102819
  6. Group : Unspecified
  7. Size : 43643976
  8. License : ASL 2.0
  9. Signature : RSA/SHA256, 20160624 星期五 114308秒, Key ID 24c6a8a7f4a80eb5
  10. Source RPM : docker-1.10.3-44.el7.centos.src.rpm
  11. Build Date : 20160624 星期五 081054
  12. Build Host : worker1.bsys.centos.org
  13. Relocations : (not relocatable)
  14. Packager : CentOS BuildSystem <http://bugs.centos.org>
  15. Vendor : CentOS
  16. URL : https://github.com/docker/docker
  17. Summary : Automates deployment of containerized applications
  18. Description :
  19. Docker is an open-source engine that automates the deployment of any
  20. application as a lightweight, portable, self-sufficient container that will
  21. run virtually anywhere.
  22. Docker containers can encapsulate any payload, and will run consistently on
  23. and between virtually any server. The same container that a developer builds
  24. and tests on a laptop will run at scale, in production*, on VMs, bare-metal
  25. servers, OpenStack clusters, public instances, or combinations of the above.

2.2.3、升级

2.2.4、管理

  1. S file Size differs 大小
  2. M Mode differs (includes permissions and file type) 头文件
  3. 5 digest (formerly MD5 sum) differs MD5
  4. D Device major/minor number mismatch
  5. L readLink(2) path mismatch
  6. U User ownership differs 属主
  7. G Group ownership differs 属组
  8. T mTime differs 修改时间
  9. P caPabilities differ 能力改变了

2.2.5、rpm 数据库

rpm 数据库位置: /var/lib/rpm

三、yum 使用

yum 全称 Yellowdog Update Modifier,是一个基于 rpm 软件包管理器的前端软件包管理器,其最主要的功能便是能自动管理软件包依赖关系。

3.1、yum 仓库简介

yum 仓库顾名思义是一个 rpm 软件仓库,域名安装软件时从仓库下载至本地并安装。yum 仓库实质是一个 rpm 软件包共享服务器,其中主要包含 rpm 的各种软件包,以及各个软件包之间相互依赖关系的元数据信息,服务器使用的协议可自行选择,比如 ftp、http、nfs、file 等。

yum 客户端在使用 yun 仓库时,主要完成以下操作 :

3.2、yum 客户端配置

yum 客户端配置文件主要存放于 /etc/yum.conf(主配置文件)/etc/yum.repo.d/*.repo(自定义仓库配置)

yum 配置文件一般分为 主配置段([main])、仓库配置段([repo]),类似于 Windows 的 ini 文件,yum 仓库配置示例如下 :

  1. [repo_ID]
  2. name=String
  3. baseurl=仓库的访问路径
  4. enabled={1|0} 1:表示启用 0:表示不启用
  5. gpgcheck={1|0} 1:验证gpg 0:表示不验证
  6. gpgkey=公钥地址(可以是本地,也可以是服务器端路径)
  7. cost=定义此仓库开销,默认为1000

3.4、yum 常用命令

3.5、yum 宏

yum 配置文件中有很多可用的宏变量,用于动态替换,以下列举常用的 :

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注