yum:CentOS系统的软件包管理工具
一. 简介
每次重装完系统,执行的第一个命令就是yum -y update来更新系统软件,很好用,这次就介绍下它。
yum:Yellowdog Update Modifier,是一种基于rpm的包管理工具,它能够从指定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
通俗来讲,就是可以用它来安装软件。
这里顺便简单介绍下,常见的Linux发行版主要是ReadHat系和Debian系。
-
ReadHat系是商业公司维护的发行版本,包括ReadHat、Fedora Core、CentOS等,默认使用的软件包格式是*.rpm,手动安装命令rpm(Redhat Package Manager),软件包管理工具是yum。
-
Debian系是社区组织维护的发行版本,包括Debian、Ubuntu等,默认使用的软件包格式是*.deb,手动安装命令dpkg,软件包管理工具是apt-get。
我个人使用的是CentOS,后面有时间再研究研究Debian。
二. /etc/yum.conf
yum的配置文件/etc/yum.conf,简单介绍下其中的参数
# 启用缓存
keepcache=1
# 安装包缓存目录
# cachedir=/var/cache/yum/x86_64/7
cachedir=/var/cache/yum/$basearch/$releasever
# 是否检查GPG(GNU Private Guard),一种密钥方式签名
gpgcheck=1
其中
-
$basearch变量定义了系统的架构,可以是i386、x86_64、ppc等值,通过命令
arch
可以得到,我这里$basearch=x86_64 -
$releasever变量定义了发行版本,通常是6,7等数字,通过命令
rpm -qi centos-release
可以得到,我这里$releasever=7
三. /etc/yum.repos.d
repo文件放在这个目录下,一个repo文件配置了一个或者多个软件仓库的细节内容,这里以CentOS-Base-163.repo为例,解释下参数
CentOS-Base-163.repo
[base]
name=CentOS-$releasever - Base - 163.com
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
- [base] 方括号里面的是软件源的名称,将被yum取得并识别
- name 软件仓库名称,通常是为了方便阅读配置文件
- mirrorlist 镜像服务器的地址列表,如果baseurl访问不了,会尝试使用这个
- baseurl 该源的服务器地址
- gpgcheck 是否进行gpg校验,以确定rpm包的来源是有效和安全的
- gpgkey 用于校验的gpg密钥
通常配置上面几个参数就可以了,除了这些,还支持配置的参数有
-
exclude=kernel*
exclude用来禁止这个软件仓库中的某些软件包的安装和更新, 可以使用通配符,并以空格分隔,可以视情况需要自行添加
四. 常用命令
安装指定的安装包
yum -y install lrzsz
删除程序包
yum -y remove lrzsz
全部更新
yum -y update
修改/etc/yum.repos.d下repo文件后,执行下面命令生效
yum clean all
yum makecache
五. 不常用命令
显示安装包信息
yum info lrzsz
查看程序lrzsz依赖情况
yum deplist lrzsz
显示所有已经安装和可以安装的程序包
yum list
程序组操作
# 安装
yum -y groupinstall "Development Tools"
# 删除
yum -y groupremove "Development Tools"
六. 结尾
yum使用起来很是方便。
参考: