yum命令(全称为Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

一、yum命令详解

# 语法
yum(选项)(参数) # 选项
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件。 # 参数
install:安装rpm软件包;
update:更新rpm软件包;
check-update:检查是否有可用的更新rpm软件包;
remove:删除指定的rpm软件包;
list:显示软件包的信息;
search:检查软件包的信息;
info:显示指定的rpm软件包的描述信息和概要信息;
clean:清理yum过期的缓存;
shell:进入yum的shell提示符;
resolvedep:显示rpm软件包的依赖关系;
localinstall:安装本地的rpm软件包;
localupdate:显示本地rpm软件包进行更新;
deplist:显示rpm软件包的所有依赖关系。

示例:

1.安装
yum install # 全部安装
yum install package1 # 安装指定的安装包package1
yum groupinsall group1 # 安装程序组group1 2.更新和升级
yum update # 全部更新
yum update package1 # 更新指定程序包package1
yum check-update # 检查可更新的程序
yum upgrade package1 # 升级指定程序包package1
yum groupupdate group1 # 升级程序组group1 3.查找和显示
yum info package1 # 显示安装包信息package1
yum list # 显示所有已经安装和可以安装的程序包
yum list package1 # 显示指定程序包安装情况package1
yum groupinfo group1 # 显示程序组group1信息
yum search string # 根据关键字string查找安装包 4.删除
yum remove | erase package1 # 删除程序包package1
yum groupremove group1 # 删除程序组group1
yum deplist package1 # 查看程序package1依赖情况 5.清除缓存
yum clean packages # 清除缓存目录下的软件包
yum clean headers # 清除缓存目录下的headers
yum clean oldheaders # 清除缓存目录下旧的headers 6.生成缓存
yum clean all
yum makecache

二、yum的配置文件

yum 的配置文件分为两部分:main 和repository。

  1. main部分定义了全局配置选项,整个yum 配置文件应该只有一个main。常位于/etc/yum.conf中。
  2. repository部分定义了每个源/服务器的具体配置,可以有一到多个。常位于/etc/yum.repo.d目录下的各文件中。

1、yum.conf文件详解

[main]
cachedir=/var/cache/yum/$basearch/$releasever
# yum 缓存的目录,yum 在此存储下载的rpm 包和数据库,默认设置为/var/cache/yum keepcache=0
# 安装完成后是否保留软件包,0为不保留(默认为0),1为保留 debuglevel=2
# Debug 信息输出等级,范围为0-10,缺省为2 logfile=/var/log/yum.log
# yum 日志文件位置。用户可以到/var/log/yum.log 文件去查询过去所做的更新。 exactarch=1
# 有1和0两个选项,设置为1,则yum 只会安装和系统架构匹配的软件包,例如,yum 不会将i686的软件包安装在适合i386的系统中。默认为1。 pkgpolicy=newest
# pkgpolicy:包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。一般都是选newest。 obsoletes=1
# 这是一个update的参数,简单的说就是相当于upgrade,允许更新陈旧的RPM包。 gpgcheck=1
# 有1和0两个选择,分别代表是否是否进行gpg(GNU Private Guard) 校验,以确定rpm 包的来源是有效和安全的。这个选项如果设置在[main]部分,则对每个repository 都有效。默认值为0。 plugins=1
# 是否启用插件,默认1为允许,0表示不允许。我们一般会用yum-fastestmirror这个插件。 installonly_limit=3
# 允许保留多少个内核包 exclude=selinux*
# 排除某些软件在升级名单之外,可以用通配符,列表中各个项目要用空格隔开  

2、repo文件详解

repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用。在repo文件中可以包含如下内容:

[serverid]
# serverid用于区别各个不同的repository,必须有一个独一无二的名称。 name=Some name for this server
# name用于对repository的描述,支持像$releasever $basearch这样的变量。 baseurl=url://path/to/repository/
# baseurl是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:
# baseurl=url://server1/path/to/repository/
# url://server2/path/to/repository/
# url://server3/path/to/repository/
# 其中url支持的协议有 http://、ftp://、file://三种。baseurl后可以跟多个url,你可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:
# baseurl=url://server1/path/to/repository/
# baseurl=url://server2/path/to/repository/
# baseurl=url://server3/path/to/repository/
# 其中url指向的目录必须是这个repository header目录的上一级,它也支持$releasever $basearch这样的变量。 mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
# 指定一个镜像服务器的地址列表。 gpgcheck=1
exclude=selinux*
# pgcheck,exclude的含义和[main]部分相同,但只对此服务器起作用。 failovermethod=priority
# failovermethode有两个选项roundrobin和priority,意思分别是有多个url可供选择时,yum选择的次序,roundrobin是随机选择,如果连接失败则使用下一个,依次循环,priority则根据url的次序从第一个开始。如果不指明,默认是roundrobin。 enabled=1/0
# 当某个软件仓库被配置成enabled=0时,yum在安装或升级软件包时不会将该仓库做为软件包提供源。使用这个选项,可以启用或禁用软件仓库。 

示例:163的yum源文件

[base]
# name定义了软件仓库的名称,$releasever变量定义了发行版本
name=CentOS-$releasever - Base - 163.com
# baseurl定义了软件仓库服务器的地址
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
# gpgcheck选项表示这个repo中下载的rpm将进行gpg的校验,已确定rpm包的来源是有效和安全的
gpgcheck=1
# gpgkey定义用于校验的gpg密钥
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

Linux命令(008) -- yum的更多相关文章

  1. N天学习一个linux命令之yum

    yum命令 用途 yum(Yellowdog Updater Modified),RedHat系Linux操作系统包管理器,基于rpm,从源远程仓库下载rpm包安装,同时解决依赖关系,使用Python ...

  2. Linux命令:yum命令

    YUM: Yellowdog Update Modifier,rpm的前端程序,可解决软件包相关依赖性,可在多个库之间定位软件包,up2date的替代工具 一.yum命令用法 yum repolist ...

  3. Linux命令之yum

    yum [选项] [命令] [包] yum命令是RedHat和SUSE基于rpm的软件管理器.能够从指定的服务器自动下载rpm包并安装,可以自动处理依赖关系,并且可以一次安装所有依赖关系. (扩展:域 ...

  4. Linux命令之yum篇

    作业六:yum命令1) 自定义yum仓库:createrepo[root@localhost /]#mkdir /rpm_bak[root@localhost /]#cp /media/Package ...

  5. Linux CentOS7通过yum命令安装Mono(尝先安装模式)

    前言 经过尝试网上各种安装mono的技术贴,这个安装过程经历了大约2周,尝试了各个版本,几目前博客所描述的所有安装方式.以下内容的安装方式可以为你尝试不同版本的mono.并非正式环境安装标准方式安装. ...

  6. Linux下常用yum命令

    linux各发行版有多种包管理机制,下面介绍基于RedHat系的yum包管理命令: yum -y install xxx                                     无需询 ...

  7. linux命令之:yum

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  8. linux下的yum命令详细介绍

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  9. Linux系统下RPM命令和yum的使用

    Linux系统下RPM命令和yum的使用 RPM:Redhat Packages Manager (红帽系列软件包的管理),主要用于安装.卸载.升级和管理软件. 一个包由下面几个部分构成: 例如:ht ...

随机推荐

  1. BZOJ2272: [Usaco2011 Feb]Cowlphabet 奶牛文字

    n<=250个大写字母和m<=250个小写字母,给p<=200个合法相邻字母,求用这些合法相邻字母的规则和n+m个字母能合成多少合法串,答案mod 97654321. 什么鬼膜数.. ...

  2. Thinkphp5.0 的使用模型Model查询

    Thinkphp5.0 的使用模型Model查询 一.查询多条记录 获取多个数据可以使用:select()方法和all()方法. 示例一:使用all()方法. //(1)筛选条件使用闭包函数 $res ...

  3. view属性大全

  4. POJ 3169_Layout

    大早上水一发=.= 题意: n头牛按编号顺序站成一列,给定n头牛之间的位置关系,求出第n头牛和第一头牛之间的最大距离. 分析: 差分约束系统,这题不等式关系还是挺好找的.注意因为按照顺序排列,所以有d ...

  5. webstrom设置代码缩进四个空格

    言,今天在github上拉了一份代码,发现代码缩进是2个空格,不习惯.找到了解决方案. 一.File ---> Settings 搜索Code Style,取消勾选使用现文件的缩进方式,见下图. ...

  6. 深入理解hadoop(三)

    Hadoop多用户作业调度器 hadoop 最初是为批处理作业设计的,当时只采用了一个简单的FIFO调度机制分配任务,随着hadoop的普及以及应用的用户越来越多,基于FIFO的单用户调度机制不能很好 ...

  7. Nginx+Tomcat+Memcached负载均衡和session共享

    1. 演示搭建 说明:本文参考网络日志http://blog.csdn.net/remote_roamer/article/details/51133790,结合实际操作,仅做个演示记录. 1.1.  ...

  8. springboot application.properties

    verify if you have this items: @Bean public CommonsMultipartResolver multipartResolver() { CommonsMu ...

  9. js下载

    下载用ajax不好使,得用表单提交的方式 download:function(url,paramObj){ var doc = document; //使用一个隐藏的form表单执行提交,没有则创建 ...

  10. CentOS firewall添加开放端口

    添加 firewall-cmd --zone=public --add-port=80/tcp --permanent (–permanent永久生效,没有此参数重启后失效) 重新载入 firewal ...