Linux系列教程(十二)——Linux软件包管理之yum在线管理

  上一篇博客我们介绍了rpm包管理之rpm命令管理,我们发现在使用rpm命令手动安装rpm包的时候,会发现安装遇到到的依赖让你痛不欲生,安装一个rpm时会要先先安装某个依赖的rpm,而安装这个依赖的rpm包是可能又必须先安装它所依赖的。在实际操作中,我们肯定是不会使用rpm命令手动安装软件包的,更简单的方法就是这篇博客我们将介绍RPM包管理——yum在线管理。

1、yum在线管理

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

  从上面的解释我们可以看到yum管理是从指定的服务器(网络yum源)下载,所以必须要有网络或者自己手动配置一个本地yum源(不需要网络,后面会讲解如何手动配置),而且最关键的是yum能帮我们解决依赖性关系。

2、网络 yum 源

  在安装好的Linux系统中,进入到 /etc/yum.repos.d/ 目录:

  一般来讲,以 .repo 结尾的文件都是yum源。如果能联网,会使用CentOS-Base.repo作为默认的yum源,如果不能联网我们使用 CentOS-Media.repo 作为本地光盘yum源。

  通过vim 命令打开 CentOS-Base.repo:

  查看红色框住的内容:

  mirrorlist和baseurl的地址就是用来下载rpm包的地址,我们使用其中一个就好了。由于默认的地址都是国外的网站,如果嫌网速慢的话,可以更改为国内的yum源地址。

  比如阿里的:http://mirrors.aliyun.com/repo/Centos-7.repo

3、光盘 yum 源搭建步骤

  ①、挂载光盘

  ②、让网络 yum 源失效

  原理就是让以 .repo 文件都不存在。这里我们将 /etc/yum.repos.d 目录下的 .repo 文件都重命名为.repo.bak

  ③、修改光盘yum源文件

  也就是修改上面的 CentOS-Media.repo 文件。

  ④、输入yum list 可以查看光盘yum源里面的软件包

4、常用的 yum 命令 

  ①、查询所有可用软件包列表:yum list

  注意:此命令是在配好的yum源服务器上去查询所有可用的软件包

  ②、查询服务器上和关键字相关的软件包:yum search 关键字

  ③、yum 安装软件包:yum -y install 包名

  选项: -y   表示自动回答 yes(如果不加,每安装一个软件都会让你确认是否安装)

     install   表示安装

  范例:这里以安装编译器 gcc 为例(后面演示安装源码包必须要用到此编译器):yum -y install gcc

  没有报错,出现如下安装信息则说明安装成功:

  或者在安装完成之后,输入 rpm -q gcc 弹出如下界面表示安装成功:

  ④、yum 升级软件包:yum -y update 包名

  注意:如果不指定包名,那么将会升级系统中所有的软件包,包括Linux内核。而Linux内核升级之后是需要在本地进行一些配置才能开机,如果是远程连接服务器进行Linux内核升级,那么是不可能启动服务器的。

  ⑤、yum 卸载软件包:yum -y remove 包名

  注意:卸载和升级也一样,而且由于软件包很多都有依赖性,你卸载A,而B和C都依赖于A,那么B和C都会卸载。假如C和Linux某个系统软件有依赖,而C也卸载掉了,可能造成某个系统功能不能使用。所以我们在卸载软件的时候一定要注意。

5、yum软件组管理

  安装某个软件组,会比我们一个一个安装某个软件包要方便的多。

  这是在远程的桌面显示的是中文信息,如果直接进入服务器查询,显示的便是英文,我们需要什么直接安装即可。

6、总结

  本篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要的解决了软件包依赖性问题。在安装软件时,我们使用yum命令将会简单方便很多,下篇博客我们将介绍源码包以及如何安装源码包。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏vue学习

41、MongoDB入门及环境搭建

(1)MongoDB数据库下载完了以后,我们还需要配置mongodb和数据存放的位置;所以我们在任意位置新建三个文件夹(我的是在D盘下面)

7420
来自专栏Jay的后台开发笔记

简单的linux系统配置故障定位与排除

本文旨在通过一些常用命令的用法示例,让有一定linux基础的开发同学能对系统进行简单配置,也能够上服务器定位或者解决一些简单基础性的问题,做出初步故障排除,或者...

31060
来自专栏北京马哥教育

70条常用Linux基础命令总结

? [root@ping ~]# tree -L 1 / #使用tree 命令查看根目录下的一层的目录结构 ls - list directory co...

40370
来自专栏Java技术分享

maven环境快速搭建

---------------准备工作------------- Jdk  1.5以上java开发环境。 Eclipse IDE 一个。 Maven 3.0.3...

23350
来自专栏编码小白

Ofbiz模块加载机制即创建独立模块(脱离热部署)

一般我们在ofbiz下的hot-deploy下直接创建模块组件就可以进行访问,但是我觉得文件过多话,就不方便管理,所以我们可以分离出来单独建立一个文件模块...

32950
来自专栏13blog.site

Spring+SpringMVC+MyBatis+easyUI整合基础篇(十)SVN搭建

前言 前面一篇文章讲了一下版本控制,但其实这一篇并没有打算讲细节的,感觉应该自己去动手弄一下,后来考虑了一下,版本控制真的挺重要的,如果自己实在搭建不好反而不去...

29950
来自专栏测试驿栈

Linux内存机制以及手动释放swap和内存

我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念...

48430
来自专栏后端技术探索

Nginx从听说到学会(3.进程模型)

众所周知,nginx性能高,而nginx的高性能与其架构是分不开的。那么nginx究竟是怎么样的呢?这一节我们先来初识一下nginx框架吧。

10120
来自专栏跟着阿笨一起玩NET

搭建windows server 2008 r2 FTP 后 开启防火墙无法访问的解决办法

转自http://kkworms.blog.51cto.com/540865/558477

2.7K10
来自专栏测试驿栈

JProfiler简明使用教程

 JProfile是一款性能瓶颈分析工具,监控粒度可以细化到某一个类包,堪称神器!我安装了一下9.11的版本,并简单说说使用方法。

1.9K30

扫码关注云+社区

领取腾讯云代金券