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)
上一篇 2016-08-29 08:44
下一篇 2016-08-29 08:45

相关推荐

  • 马哥教育网络19期+第十四周课程练习

    系统的INPUT和OUTPUT默认策略为DROP; 先把策略设置为DROP # iptables -t filter -P OUTPUT DROP # iptables -t filter -P INPUT DROP 1、限制本地主机的we…

    Linux干货 2016-08-22
  • 文本处理工具sed的使用以及Vim的使用技巧详解

    一、什么是sed     sed的英文全称是Stream EDitor,叫行编辑器。     sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容…

    Linux干货 2016-08-11
  • iptables——linux下的防火墙

    iptables Firewall:隔离工具 Packets Filter Firewall;工作于主机或网络的边缘,对经由的报文根据预先定义的规则(匹配条件)进行检测,对于能够被规则匹配到的报文实行某预定义的处理机制的一套组件          硬件防火墙:在硬件级别实现部分功…

    Linux干货 2016-10-22
  • Linux的SOCKET编程详解

    1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进 程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如 UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal) UNIX system V有:消息(message)、共享存储区…

    Linux干货 2015-04-10
  • N25-第5周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行 [root@jizo ~]# grep -E '^[[:space:]]+.*' /boot/grub/gurb.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,…

    Linux干货 2017-01-09
  • 2017-10-4Linux基础知识(3)

    在上一章中讲到了操作系统的历史的发展以及Linux的如何诞生,在1991年的8月份,创始人Linus宣布成立Linux的,Larry Wall开发diff和patch打补丁的命令程序使得Linux可以在安全性方面有很大的提升。

    Linux干货 2017-10-05