简介:

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum配置文件:

主配置文件:/etc/yum.conf (对所有yum仓库都有效)

各仓库的定义:/etc/yum.repos.d/*.repo (仅对自己仓库生效,优先级大于主配置文件。)

如下,我们自己创建一个yum库:

[testrepo]:代表仓库唯一标识ID

name:当前仓库简要介绍信息

baseurl:仓库的URL地址(ftp | http | 本地目录)

gpgcheck:是否校验包(1是 | 0否)

enabled:仓库是否可用

yum命令:

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

command is one of:

* install package1 [package2] [...]

* update [package1] [package2] [...]

* update-to [package1] [package2] [...]

* check-update

* upgrade [package1] [package2] [...]

* upgrade-to [package1] [package2] [...]

* distribution-synchronization [package1] [package2] [...]

* remove | erase package1 [package2] [...]

* list [...]

* info [...]

* provides | whatprovides feature1 [feature2] [...]

* clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

* makecache

* groupinstall group1 [group2] [...]

* groupupdate group1 [group2] [...]

* grouplist [hidden] [groupwildcard] [...]

* groupremove group1 [group2] [...]

* groupinfo group1 [...]

* search string1 [string2] [...]

* shell [filename]

* resolvedep dep1 [dep2] [...]

* localinstall rpmfile1 [rpmfile2] [...]

(maintained for legacy reasons only - use install)

* localupdate rpmfile1 [rpmfile2] [...]

(maintained for legacy reasons only - use update)

* reinstall package1 [package2] [...]

* downgrade package1 [package2] [...]

* deplist package1 [package2] [...]

* repolist [all|enabled|disabled]

* version [ all | installed | available | group-* | nogroups* | grouplist | groupinfo ]

* history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]

* load-transaction [txfile]

* check

* help [command]

介绍几个常用参数:

仓库管理:

repolist: 列出已经配置的所有可用仓库

repolist [all|enabled|disabled]

缓存管理:

clean:清理缓存

clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

makecache: 缓存创建

自动连接至每一个可用仓库,下载其元数据,将其创建为缓存

程序包查看:

yum list [all | glob_exp1] [glob_exp2] [...]

支持使用通配符,例如:yum list php*   --查看php开头的包

yum list {available|updates|installed|extras|obsoletes} [glob_exp1] [...]

条件查找,查看程序包,例如:available(有效的程序包),installed(已安装的程序包)

grouplist [hidden] [groupwildcard] [...]

程序包安装:install package1 [package2] [...]

注意:

只需要提供包名;

如果某包有在不同仓库中有多个不同版本,默认会安装最新版本;

如果要安装指定版本:install PACKAGE-VERSION ...

重新安装(覆盖安装)reinstall package1 [package2] [...]

程序包升级:update [package1] [package2] [...]

程序包降级:downgrade package1 [package2] [...]

检查有哪些升级可用:check-update

程序包卸载:

remove | erase package1 [package2] [...]

所有依赖于正卸载的程序包的程序包会被一并卸载;

程序包查询:

查询程序的相关简要信息:info PACKAGE ...

例如:yum info php(查看php的简要信息)

在包名和sumary信息中搜索指定的关键字:search KEYWORD ...

例如:yum search php (检查简要信息中有php关键字的)

查询指定文件由哪个程序包安装生成:provides|whatprovides /PATH/TO/SOMEFILE

例如:yum provides /etc/inittab (检查inittab这个文件由哪个程序包生成)

包组管理:

列出所有包组:grouplist

显示指定包组详情:groupinfo group1 [...]

安装:groupinstall group1 [group2] [...]

卸载:groupremove group1 [group2] [...]

升级:groupupdate group1 [group2] [...]

注意:CentOS 7 之后可以直接用install,remove或update来管理包组,组名前加(@)。

例如: yum install @"Server Platform Development" (安装sever platform development包)

yum命令其他选项:

-y:自动回答为“yes”

--disablerepo=:临时禁用配置文件中配置的仓库

--enablerepo=:临时启用指定未启用的某仓库

--nogpgcheck:不做包校验

yum内置变量:

(1) $raleasever: 当前OS发行版的主版本号;

例如,对CentOS 6.6 x86_64,主版本号为6;

(2) $arch:平台

i386, i486

(3) $basearch: 基础平台, 例如i686, i586, i486以及i386的基础平台同为i386;

(4) $YUM0-$YUM9

例如:当前系统为CentOS 6.6  x86_64

baseurl=http://repo.magedu.com/centos/$releasever/$basearch (此写法和下方写法一样效果)

http://repo.magedu.com/centos/6/x86_64

(CentOS) 程序安装包管理:yum的更多相关文章

  1. C#软件winform程序安装包制作及卸载程序制作

    使用vs2010 winform程序开发的软件的人比较多,程序的开发是为了在不同的人不同的机器使用,为了使不同的机器能使用该软件就需要在制作程序安装包,安装包里必须包含该软件运行所选的所有环境,下面就 ...

  2. Sublime Text 3中文乱码解决方法以及安装包管理器方法

    一般出现乱码是因为文本采用了GBK编码格式,Sublime Text默认不支持GBK编码. 安装包管理器 简单安装 使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令 ...

  3. Mac OS平台下应用程序安装包制作工具Packages的使用介绍

    一.介绍 Windows下面开发好的应用程序要进行分发时有很多打包工具可供选择,如Inno Setup, InstallShield, NSIS, Advanced Installer, Qt Ins ...

  4. 基于DevExpress的Winform程序安装包的制作

    在我们做系统开发的时候,都会面临一个安装包制作的问题,如何把我们做好的系统,通过安装包工具整合成一个安装包给客户进行安装.安装包的优势就是一步步安装就可以了,不用复制一大堆文件给客户,还怕缺少那个文件 ...

  5. 使用WinRar软件制作程序安装包

    之前我写过使用好压软件打包程序,见随笔: 使用好压(HaoZip)软件打包EverEdit制作安装程序 - Fetty - 博客园http://www.cnblogs.com/fetty/p/4907 ...

  6. 用inno Setup做应用程序安装包的示例脚本(.iss文件)(

    用innoSetup做应用程序安装包的示例脚本(.iss文件),具体要看innoSetup附带的文档,好象是pascal语言写的脚本. 示例1(应用程序.exe,客户端安装): ;{089D6802- ...

  7. 【原创】VB6.0应用程序安装包的生成(Setup Factory 9.0制作安装包的方法)

    VB6.0应用程序安装包的生成,利用其自带的打包工具生成的安装程序很简陋,一点不美观:如果想让自己的应用程序安装的时候显得高大上一点,本教程提供使用Setup Factory 9.0制作安装包的方法. ...

  8. 制作Linux下程序安装包——使用脚本打包bin、run等安装包

    制作简单的安装包的时候可以简单的用cat命令连接两个文件,然后头部是脚本文件,执行的时候把下面的文件分解出来就行了.一般这个后部分的文件是个压缩 包,那样,就能够打包很多文件了,在脚本中解压出来即可. ...

  9. php实现在线下载程序安装包功能

    在线下载程序安装包可以很方便在服务器端下载各种程序安装包(Discuz!.phpwind.Dedecms.WordPress....等一些常用程序)并存储在服务器,大大减少站长上传程序安装包时间.默认 ...

随机推荐

  1. 使用Log Explorer查看和恢复数据

    由于一次意外操作,把QC数据库中的BUG表数据给删掉了.崩溃-上网找了下恢复方法,找到一款Log Explorer.下载安装使用后,发现这款软件的确不错,收藏ing.   本次的使用的Log Expl ...

  2. Java实现文件压缩与解压[zip格式,gzip格式]

    Java实现ZIP的解压与压缩功能基本都是使用了Java的多肽和递归技术,可以对单个文件和任意级联文件夹进行压缩和解压,对于一些初学者来说是个很不错的实例. zip扮演着归档和压缩两个角色:gzip并 ...

  3. 【Python】vim7.4 配置python2.6支持Gundo

    问题描述:          vim7.4 配置python2.6支持Gundo   参考资料:         (1)  http://sjl.bitbucket.org/gundo.vim/    ...

  4. vector内存分配

    vector,map 这些容器还是在堆上分配的内存,在析构时是释放空间 vector在提高性能可以先reserve在push_back() reserve:决定capacity,但没有真正的分配内存, ...

  5. unity android 集成指南

    原地址:http://blog.csdn.net/alking_sun/article/details/36175187 1.安卓层开发并暴露接口.   launcher activity(以下称为U ...

  6. B股

    B股的正式名称是人民币特种股票.它是以人民币标明面值,以外币认购和买卖,在中国境内(上海.深圳)证券交易所上市交易的外资股.B股公司的注册地和上市地都在境内.

  7. CentOS 6下安装nginx

    原文:http://yubosun.akhtm.com/tech/centos-nginx.htm 1 在nginx官方网站下载一个rpm包,下载地址是:http://nginx.org/en/dow ...

  8. CSS 加载新方式

    Chrome 浏览器有意改变<link rel="stylesheet">的加载方式,当其出现在<body>中时,这一变化将更加明显.笔者决定在本文中进行详 ...

  9. 【面试题042】翻转单词顺序VS左旋转字符串

    [面试题042]翻转单词顺序VS左旋转字符串 题目一:     输入一个英文句子,反转句子中单词的顺序,但单词内字符的顺序不变.为简单起见,标点符号和普通字母一样处理.     例如输入字符串“I a ...

  10. ArrayList和Iterator的用法

    import java.util.ArrayList; import java.util.Iterator; public class ArrayListTest { public static vo ...