yum使用

引子:
yum类似于开发工具idea、eclipse中的在线插件安装商店
我们输入一个将要安装的插件名字,进行搜索、安装的过程。

yum概念

yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。

yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum原理

yum unhide没有镜像_linux

注意:必须联网

不同的服务通过yum命令连接远程yum源进行查找、下载、安装

使用者权限:管理员

语法

yum [options] [command] [package ...]
  • **options:**可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
  • **command:**要进行的操作。
  • package操作的对象。

yum常用命令

  • 1.列出所有可更新的软件清单命令:yum check-update
  • 2.更新所有软件命令:yum update
  • 3.仅安装指定的软件命令:yum install <package_name>
  • 4.仅更新指定的软件命令:yum update <package_name>
  • 5.列出所有可安裝的软件清单命令:yum list
  • 6.删除软件包命令:yum remove <package_name>
  • 7.查找软件包 命令:yum search
  • 8.清除缓存命令:
  • yum clean packages: 清除缓存目录下的软件包
  • yum clean headers: 清除缓存目录下的 headers
  • yum clean oldheaders: 清除缓存目录下旧的 headers
  • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

4.1.1 安装tree

yum -y install tree   //y当安装过程提示选择全部为"yes"

执行效果如下

注意:第一次在itcast用户执行的时候

提示我们【需要管理员权限】

yum unhide没有镜像_yum unhide没有镜像_02

yum unhide没有镜像_yum unhide没有镜像_03

安装完执行tree命令

tree

yum unhide没有镜像_linux_04

4.1.2 移除tree

yum remove  tree

执行效果如下

yum unhide没有镜像_yum unhide没有镜像_05

此时,我们在执行tree命令

tree

执行效果如下

yum unhide没有镜像_linux_06

如上图,由于我们移除了tree,在执行tree命令的时候发现找不到这个命令了。

4.1.3 yum查找

利用 yum 的功能,找出以 tom 为开头的软件名称有哪些

yum list tom*

执行效果如下

yum unhide没有镜像_linux_07

4.1.4 yum源

概述

yum需要一个yum库,也就是yum源。

简单的说,我们安装软件的时候需要下载软件,将很多软件放在一起就是源。软件安装包的来源,所以yum源就是软件安装包来源

yum源分类

目前,yum默认使用的是CentOS的yum源,如下

yum unhide没有镜像_yum unhide没有镜像_08

yum unhide没有镜像_运维_09


目前,国内有很多不错的yum源,比如阿里、网易、搜狐等

安装阿里yum源

因为默认的yum源服务器在国外,我们在安装软件的时候会受到速度的影响,所以安装国内yum源在下载的时候速度、稳定性会比国外的好很多。

1) 安装wget

yum install -y wget

执行效果如下

yum unhide没有镜像_yum unhide没有镜像_10

yum unhide没有镜像_服务器_11

安装成功。

2) 备份/etc/yum.repos.d/CentOS-Base.repo文件

cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.back

执行效果如下图

yum unhide没有镜像_运维_12

3) 下载阿里云的Centos-7.repo文件

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

注意

上面的url中要卸载Centos-7.repo;而不是Centos-6.repo

执行效果如下图

yum unhide没有镜像_centos_13

查看下载的阿里云的Centos-6.repo文件

cat CentOS-Base.repo

执行效果如下

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the 
# remarked out baseurl= line instead.
#
#
 
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
 
#released updates 
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
 
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
 
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

如上面的命令,之前是【CentOS】,现在是【aliyun】

4) 重新加载yum

yum clean all

清理之前(CentOS)的缓存

执行效果如下

yum unhide没有镜像_运维_14

yum makecache

就是把服务器的包信息下载到本地电脑缓存起来,makecache建立一个缓存,以后用install时就在缓存中搜索,提高了速度。

执行效果如下

yum unhide没有镜像_yum unhide没有镜像_15

如上图,元数据缓存已建立,缓存成功。

5、验证yum源使用

yum search tomcat

执行效果如下

yum unhide没有镜像_服务器_16

如上图所示,我们发现,现在查找软件信息使用了上面的yum缓存。

Loading mirror speeds from cached hostfile(从缓存的主机文件加载镜像速度)

  • base: mirrors.aliyun.com
  • extras: mirrors.aliyun.com
  • updates: mirrors.aliyun.com

总结

yum -y install 软件包

卸载软件
yum -y remove 软件包

查找软件

yum list *

yum源

版本:

比如我们使用的是CentOS7,在下载CentOS-Base.repo的时候要注意它的版本。