Linux软件包管理器yum

文章目录

  • 前言
  • 概述
  • Linux下载软件的三种方式
    • 源代码安装
    • rpm安装
    • yum安装
  • 关于yum的相关操作
    • 查看软件包
    • 软件安装
    • 卸载软件
  • yum源问题

前言

在Windows系统中,如果我们要去下载软件,我们可以在该软件的官网中进行下载,或者在微软的额软件商店进行下载:

Linux软件包管理器yum_第1张图片
Linux软件包管理器yum_第2张图片

那么,Linux系统下如何安装软件呢?
本篇文章小编主要介绍Linux软件包管理器–yum

概述

什么是yum?

yum是一个软件下载管理的一个客户端,类似于小米应用商店,华为应用商城

在Linux中软件包可能会有依赖关系,那么yum会帮助我们解决依赖关系。

Linux下载软件的三种方式

源代码安装

源代码安装下载到程序的源代码, 并进行编译, 得到可执行程序,对用户的能力有较高的要求。

rpm安装

由于源代码安装起来实在有些麻烦,于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装。这种安装方式,需要做很多前期工作,也比较麻烦。

yum安装

yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上。

yum会帮我们解决安装源的问题,即我们不需要知道去哪里下载;安装版本的问题;安装依赖的问题。yum充当着应用商店的角色。

关于yum的相关操作

在下载软件时,用户需要的软件都在一个远端服务器里面,需要通过网络去远端服务器去下载所需要的软件。

Linux软件包管理器yum_第3张图片

查看软件包

通过 yum list 命令可以罗列出当前一共有哪些软件包。

由于包的数目可能非常之多, 这里我们需要使用 grep 命令只筛选出我们关注的包。
指令:
yum list

举例:
yum list | grep lrzsz

yum list | grep lrzsz
lrzsz.x86_64                             0.12.20-36.el7                base 

在这里插入图片描述
显示的结果每个字段有不同的意思:
lrzsz:软件包名称,主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.

x86_64:后缀表示64位系统的安装包, “i686” 后缀表示32位系统安装包. 选择包时要和系统匹配.

el7:表示操作系统发行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.

base:表示的是 “软件源” 的名称, 类似于 “小米应用商店”, “华为应用商店” 这样的概念.

软件安装

指令:
yum install lrzsz

yum 会自动找到都有哪些软件包需要下载, 这时候敲 “y” 确认安装.

出现 “complete” 字样, 说明安装完成.

安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.

yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错.

举例:
yum install sl


centos7下的yum有很多好玩的指令,大家可以网上搜搜玩一下

卸载软件

指令:

yum remove lrzsz

举例:

[root@iZf8zhv7mi2thjdxsptkb8Z ~]# yum remove sl
Loaded plugins: fastestmirror
Resolving Dependencies
--> Running transaction check
---> Package sl.x86_64 0:5.02-1.el7 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================
 Package                   Arch                          Version                              Repository                    Size
=================================================================================================================================
Removing:
 sl                        x86_64                        5.02-1.el7                           @epel                         17 k

Transaction Summary
=================================================================================================================================
Remove  1 Package

Installed size: 17 k
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : sl-5.02-1.el7.x86_64                                                                                          1/1 
  Verifying  : sl-5.02-1.el7.x86_64                                                                                          1/1 

Removed:
  sl.x86_64 0:5.02-1.el7                                                                                                         

Complete!

Linux软件包管理器yum_第4张图片

这样就完成了删除sl

yum源问题

yum是如何知道在哪里下载用户所需要的软件的呢?

实际上是yum内置了链接,在/etc/yum.repos.d/路径下,就可以看到当前设备的yum源:
在这里插入图片描述
这里的CentOS-Base.repo 是官方的yum源,通过vim /etc/yum.repos.d/CentOS-Base.repo可查看:
Linux软件包管理器yum_第5张图片

你可能感兴趣的:(南桥谈Linux,linux,运维,服务器)