Linux前端包管理器—yum

Yum(Yellow dog Updater, Modified)由Duke University团队,修改Yellow Dog Linux的Yellow Dog Updater开发而成,是一个基于RPM包管理的字符前端软件包管理器。能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

介绍yum工作流程之前,了解一下yum仓库的概念。软件发布者将rpm包放置到服务器某一路径下,并在该路径下生成了这些包的索引数据,包括文件列表,依赖性关系等等,我们称该路径下的rpm包和索引数据构成了一个yum仓库。

yum的工作流程:客户端执行安装,升级等操作时,yum扫描各个仓库索引数据是否有更新,如有更新则下载新索引数据到本机,然后根据包名进行匹配查找,结合本地rpm数据库检测依赖性环境,如果不满足,则自动在各个仓库匹配、下载安装,最后安装或升级指定程序。

一、Yum配置

主配置文件/etc/yum.conf

blob.png

cachedir     指定缓存文件和数据库文件存放的位置

keepcache     1或0。安装成功后是否保留头文件和rpm包的缓存文件,0为不保留

exactarch    1或0。1表示仅升级和已安装包的架构相同的包

gpgcheck     1或0。是否对rpm包进行GPG签名检查,该处定义影响所有仓库配置文件默认值,0为不检查

obsoletes    1或0。1表示处理淘汰的包,更新后淘汰的包会被相应的移除和取代

plugins       1或0。1表示启用yum插件功能

installonly_limit    同时安装包的数量

仓库地址配置文件/etc/yum.repos.d/*.repo

这里定义了yum从何处获取rpm包。yum本身已经配置好一些仓库地址信息,需要联网使用。也可以自定义配置仓库地址。

repo配置文件最简单形式如下:

[repository ID]    仓库唯一ID标志

name=         仓库命名

baseusrl=        仓库地址。指向repodata的父目录。可用协议http://,ftp://,file://

gpgcheck=0       是否进行gpg签名检查 ,默认为1,0表示不检查

也可指定如下选项:

enabled=        仓库有效标志,默认为1表示有效

gpgkey=        gpg签名公钥存放路径

cost=         优先级表示,默认1000,数值低优先级越高

这里给出一个配置例子

blob.png

使用yum repolist可查看配置仓库状态

blob.png

在官方配置文件中出现了可使用变量,有助于统一化描述

blob.png

$releaserver    当前OS的发行版的主版本号:6,7

$arch          平台架构

$basearch      基础平台架构,32位架构演变很多,基础架构都是i386 

$YUM0~$YUM9      可用自定义变量

二、yum使用语法

yum [options] [command] [package...]

[command]部分

repolist    显示仓库列表

info       查看包信息

blob.png

list [available|installed|updates|all]

    显示包列表,缺省选项为all。@表示通过yum方式安装,@anaconda意为系统自动安装

blob.png

install    安装

reinstall    重新安装

update      升级

downupgrade   降级操作

check-update  检查可用升级

provides     查看指定能力由哪个包提供

blob.png

search     在包名和summary中搜索关键字

remove|erase  移除该包和依赖于此包的相关包

autoremove   移除并清理自动安装中不再需要的依赖包

clean all   清除所有有效仓库的缓存

包组管理命令

在基本命令前加上group

yum grouplist
yum groupinfo
yum groupinstall
yum groupremove

首先查看可用包组,准备安装红框中的包组

blob.png

执行命令yum groupinstall "File and Print Server"安装即可

history模式

yum属于事务型程序,可以对一个事务进行撤销,重新执行,回滚等操作

yum history {list|summary|undo|redo|rollback|new}

list    查看事务列表

summary   查看事务列表大纲

undo    撤销该事务,可用来卸载包

redo    重新执行该事务

rollback   回滚至该事务的状态,相当于撤销之前多个事务

new     清空历史,重新开始记录事务

首先使用list查看事务

blob.png

按时间顺序显示了已经执行的三个事务,id表示事务标志

yum history redo 1    #意味着将重新安装samba包
yum history undo 3    #意味着lftp将被重新安装回来
yum history rollback 1  #意味着id为2,3将被undo

 

一些常用[options]

-y         自动回复yes

–nogpgcheck    禁止签名检查

–disablerepo=repoglob    临时禁用指定仓库,支持glob通配

–enablerepo=repoglob     临时启用指定仓库

–noplugins    禁用任何插件

三、制作yum仓库源

制作yum仓库源很简单,使用createrepo工具制作仓库索引数据,把仓库地址配置好即可使用。

首先要安装工具

yum install createrepo

添加所需的rpm包到某一路径下,使用createrepo创建索引

blob.png

接下来配置仓库地址

blob.png

  查看仓库列表,如下已添加成功

blob.png

原创文章,作者:cutemsyu,如若转载,请注明出处:http://www.178linux.com/40696

(0)
cutemsyucutemsyu
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • 马哥教育网络班22期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# w | tail -n+3 | cut -d" " -f1 | sort |&…

    Linux干货 2016-08-29
  • Linux-文件系统初识

    Linux文件系统

    2018-03-14
  • N23-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# last -1 | head -1 3、取出当前系统上被用户当…

    Linux干货 2016-12-05
  • Linux文件系统:从inode理解软链接与硬链接

    什么是inode? 在Linux磁盘存储文件系统中,我们以块划分磁盘为两部分:超级块(superblock)和数据块(data block);同时划分单文件为用户数据(user data)和元数据(meta data)两个部分。 用户数据记录的是文件的真实内容。比如你的血液、骨骼和各器官等等。 元数据这是附加于文件的属性信息。比如身高、体重、血型和年龄等等。…

    Linux干货 2016-08-07
  • 怎么解决VMware“该虚拟机似乎正在使用中”问题

    1)故障现象:  最近使用vmware workstation测试资料,经常会出现打开虚拟机的时候提示:“该虚拟机正在被使用”,点击“获取所有权”或者“取消”都不能处理问题(一般是没有正常虚拟机导致的)。 2)处理方法: a.查找*.lck文件,然后删除。 b.重启vmware workstation服务 3)参考资料 http://jingyan…

    Linux干货 2016-07-29
  • Bash学习基础知识一“命令”

    Bash 学习基础知识 目录 一、Shell是个啥? 二、BASH的命令     2.1 命令的语法格式     2.2 什么是命令     2.4 命令的类型     …

    Linux干货 2015-04-03