【Linux精讲系列】——yum软件包管理

作者主页

📚lovewold少个r博客主页

   ⚠️本文重点Linux系统软件包管理工具yum讲解

😄每日一言:踏向彼岸的每一步,都是到达彼岸本身。

目录

前言

 Linux系统下的软件下载方式

yum

查看软件包

如何安装软件

如何卸载软件

yum下载源

更换yum源(以阿里云为例)

下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/

运行 yum makecache 生成缓存

总结


前言

        无论是使用Windows还是使用安卓手机,我们的生活越来越方便离不开软件的支持。在Windows中,我们能通过软件商店或者各种各样的平台下载想要的软件来支撑自己更加舒服的使用电脑。而软件商店的出现,起一个中间管理的身份,处于客户端和服务商之间的一个平台。对于每一个使用自家设备的用户,要想保证用户体验就得避免垃圾软件和捆绑下载。

        相比较通过第三方下载的无保障,各家的软件商店起到一个分类集合以及甄别的过程,特别是对于p2p下载方式的软件。自带各家产品经理跑到用户电脑进行捆绑安装,这种流氓行为只会引起用户的投诉,要想保证软件的合理安装,各家的软件商店就得保障软件的安全可靠问题。而yum也就是Linux系统的软件管理工具。

 Linux系统下的软件下载方式

        对于一款系统,支持软件生态是必须的,Linux系统下也可以安装软件。

        一种方式是下载程序的源代码,自行编译,得到可执行程序。但是这种方式是有极大的风险的,源代码虽然可以观察,但是也可能留各种bug漏洞引起系统问题。同时对于使用者来讲,需要自行编译,这种方式是非常复杂的。

        于是有人就把一些常用的软件提前编译好,做成软件包,放在一个服务器上,通过包管理器可以很方便的获取到这个已经编译好的软件直接安装。

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

        基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

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

yum

查看软件包

使用yum所有操作之前,首先要保证主机或者虚拟机网络畅通。

通过 ping 指令验证网络是否联通。

ping www.baidu.cow

通过 yum list 命令可以罗列当前一共有哪些软件包,由于包的数目非常多,我们需要使用 grep 命令罗列我们关注的包,例如:

yum list | grep lrzsz

结果如下:

显示结果的软件信息展示主要包含以下内容:

  • 软件包名称.主版本号.次版本号.源代码发行号-软件包的发行号.主机平台.cup架构
  • "x86_64"后缀表示64位系统的安装包,"i686"后缀表示32位系统的安装包,选择软件包的时候要与系统匹配。
  • "el7"表示操作系统的版本,"el7"表示的是centos7/redhat7,"el6"表示centos6/redhat6。
  • 最后一列,@os表示的是"软件源"的名称,类似于"小米应用商店","华为应用商店"这样的概念。

如何安装软件

通过yum,我们通过一条很简单的命令完成sl的安装。

sudo yum install sl

结果如下:

接着系统会确定是否安装,输入y确定安装即可。

出现Complete!就表示安装成功

注意事项

  •         安装软件一般需要向系统目录写入文件,因此权限上需要使用sudo指令或者切换到root账户下才能完成。
  •         yum安装软件只能安装完一个后再安装另一个,如果安装过程中尝试安装另一个yum会报错

如何卸载软件

sl为卸载软件名,我这里卸载的是sl软件。

sudo yum remove sl

yum下载源

        下载软件除了指定的部分来源,还有很多下载的地方。好比去商店买水,不是每一家都买的有一块钱的矿泉水,而yum的下载源也不止一个。

        我们知道Linux作为一个开源平台,维护和大部分系统贡献者是国外的程序员。大部分软件都是国外程序员写的,因此我们不一定能访问到他们发布的软件源。同时CentOS自带yum仓库源网址是国外的网址,所以从国内下载国外网址的rpm包有时候会很慢或者无法下载,这时可以更换国内的yum仓库源来解决这个问题。因此,为了避免软件下载缓慢和下载软件厂商不能访问到,国内将这些软件包进行集中整理,形成了不同的下载源。

国外的yum源访问速度较慢,一般情况下建议替换成国内的免费yum源。国内提供了不少优秀的yum源,例如:

  • 搜狐开源镜像站:http://mirrors.sohu.com/
  • 网易开源镜像站:http://mirrors.163.com/
  • 中国科学技术大学:   http://mirrors.ustc.edu.cn/
  • 清华大学: http://mirrors.tuna.tsinghua.edu.cn/
  • 电子科技大学:http://ubuntu.uestc.edu.cn/

更换yum源(以阿里云为例)

进入/etc/yum.repos.d目录下,可以查看yum源文件。

cd /etc/yum.repos.d

结果如下:

备份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/

下载需要对应Linux系统版本我这里是Centos7

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

结果如下:

运行 yum makecache 生成缓存

yum clean all
yum makecache 

结果如下:


总结

        yum(Yellowdog Updater, Modified)是一个在Linux系统中用于管理软件包的包管理工具。它通常用于基于Red Hat的发行版,如Fedora和CentOS。以下是一些常见的Yum指令及其用途的总结:

1. 安装软件包: 用于安装指定软件包及其依赖项。

yum install package_name

2. 升级软件包:用于更新特定软件包。

 yum update package_name

3. 升级系统中的所有软件包:用于更新系统中的所有软件包和依赖项。

yum update

4. 搜索软件包: 用于在仓库中搜索与关键字匹配的软件包。

yum search keyword

5. 列出已安装的软件包:用于列出系统上已安装的软件包。

yum list installed

6. 列出可用的软件包: 用于列出仓库中所有可用的软件包。

yum list available

7. 删除软件包:用于卸载指定的软件包。

yum remove package_name

8. 清理缓存:用于清理已下载的软件包文件。

yum clean packages

9. 显示软件包信息: 用于显示特定软件包的详细信息,包括版本、依赖关系等。

yum info package_name

10. 禁用或启用仓库:用于禁用或启用特定仓库,可以帮助管理软件包源。

yum-config-manager --disable repository_name
yum-config-manager --enable repository_name

11. 清除所有事务:用于清除Yum事务的缓存,可以用于解决一些包管理问题。

yum clean all

12. 检查依赖关系:用于列出指定软件包的依赖关系。

yum deplist package_name

        这些是一些常见的yum指令,用于在Linux系统上管理软件包。yum提供了强大的包管理功能,使您可以轻松地安装、更新和卸载软件包,并处理它们之间的依赖关系。


    作者水平有限,如有错误欢迎指正!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/120458.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

myTracks for Mac:GPS轨迹记录器的强大与便捷

你是否曾经在户外活动或旅行中,希望能够记录下你的移动轨迹?或者在工作中,需要跟踪你的行程路线?myTracks for Mac 是一款强大的 GPS 轨迹记录器,它可以帮助你实现这些愿望。 myTracks 是一款专门为 Mac 设计的 GPS 轨…

el-tree业务

<el-form-item label"选择节点" prop"node_ids"><el-checkboxv-if"regionList.length"v-model"selectAll":disabled"selectDisabled":indeterminate"isIndeterminate":show-checkbox"!selectDisabl…

微信JSAPI支付对接

简介 JSAPI支付是指商户通过调用微信支付提供的JSAPI接口&#xff0c;在支付场景中调起微信支付模块完成收款。 应用场景 JSAPI支付适用于线下场所、公众号场景和PC网站场景。 商户已有H5商城网站&#xff0c;用户通过消息或扫描二维码在微信内打开网页时&#xff0c;可以调…

机器学习-学习率:从理论到实战,探索学习率的调整策略

目录 一、引言二、学习率基础定义与解释学习率与梯度下降学习率对模型性能的影响 三、学习率调整策略常量学习率时间衰减自适应学习率AdaGradRMSpropAdam 四、学习率的代码实战环境设置数据和模型常量学习率时间衰减Adam优化器 五、学习率的最佳实践学习率范围测试循环学习率&a…

Docker 批量导入镜像

可以编写一个脚本&#xff0c;该脚本循环遍历一个文件夹中的所有镜像存档文件&#xff0c;并使用 docker load 命令加载它们。以下是一个 Bash 脚本示例&#xff1a; #!/bin/bash# 指定存档文件所在的目录 archive_dir"/path/to/archives/"# 遍历存档文件并加载到 D…

十四、城市建成区时空扩张分析——景观格局指数

一、前言 景观格局指数:指景观格局与景观指数,景观格局通常是指景观的空间结构特征,具体是指由自然或人为形成的,一系列大小、形状各异,排列不同的景观镶嵌体在景观空间的排列,它即是景观异质性的具体表现,同时又是包括干扰在内的各种生态过程在不同尺度上作用的结果。…

Shopee新店多久出单?shopee新店如何运营?——站斧浏览器

shopee新店多久出单&#xff1f; 就以店铺每天上新来说&#xff0c;从店铺下来那天开始&#xff0c;每天10-20个产品去上新&#xff0c;正常情况下两周以内你的店铺是一定会有订单产生的。如果一两个月过去了&#xff0c;店铺还是没有单出&#xff0c;那就证明店铺存在很大的问…

【spark客户端】Spark SQL CLI详解:怎么执行sql文件、注释怎么写,支持的文件路径协议、交互式模式使用细节

文章目录 一. Spark SQL Command Line Options(命令行参数)二. The hiverc File1. without the -i2. .hiverc 介绍 三. 支持的路径协议四. 支持的注释类型五. Spark SQL CLI交互式命令六. Examples1. running a query from the command line2. setting Hive configuration vari…

缓解光纤激光切割机老化之如何保养光纤激光切割机的光学镜片

激光切割头具备极高的精密度和昂贵的价格&#xff0c;是光纤激光切割机最关键的运行部分之一。在日常的光纤激光切割机维修过程中频繁出现的关于切割头使用寿命的问题就是内部光学镜片的污染及损坏。 部分导致光纤激光切割机激光切割头光学镜片污染的原因主要包括&#xff1a;对…

【APP VTable】和市面上的 Table 组件一样,都是接收表格[] 以及数据源[]

博主&#xff1a;_LJaXi Or 東方幻想郷 专栏&#xff1a; uni-app | 小程序开发 开发工具&#xff1a;HBuilderX 这里写目录标题 表格组件USE 表格组件 <template><view class"scroll-table-wrapper"><view class"scroll-table-container"…

SpringMVC原理及核心组件

一、SpringMVC原理及核心组件 1、 Spring MVC的工作原理 Spring MVC 是一个对javaWeb中Servlet 简化和封装&#xff0c; 1.首先SpringMVC 配置DispatcherServlet 来接受所有的请求&#xff0c;我们通过DispatcherServlet 响应的所有数据&#xff0c;DispatcherServlet 是Htt…

iOS安全加固方法及实现

​ 目录 iOS安全加固方法及实现 摘要 引言 iOS安全加固方法及实现 一、字符串加密 二、类名方法名混淆 三、程序代码混淆 四、加入安全SDK 总结 参考资料 摘要 本文介绍了iOS平台下的应用安全保护方法&#xff0c;包括字符串加密、类名方法名混淆、程序代码混淆和加入…

好数组——尺取法

好数组 给定一个长度为 n 的数组 a&#xff0c;计算数组 a 中所有子数组中好数组的数目。 好数组定义如下&#xff1a; 对于数组 al ,al1, ⋯ ,ar &#xff0c;若数组中所有数的质因数种类数不超过 k&#xff0c;则称为好数组。 Input 输入的第一行包含两个正整数 n,k (1≤…

杂牌行车记录仪特殊AVI结构恢复案例

最近遇到一个杂牌的行车记录仪需要恢复数据&#xff0c;其使用AVI格式&#xff0c;但是在扫描恢复的过程中却发现厂家对其AVI结构进行了“魔改”致程序无法正常识别 故障存储:16G SD卡 fat32文件系统 故障现象: 16G的SD卡&#xff0c;在发生事故后客户尝试自行接到手机上读…

系列三、Spring IOC

一、概述 IOC的中文意思是控制反转&#xff0c;通俗地讲就是把创建对象的控制权交给了Spring去管理&#xff0c;以前是由程序员自己去创建控制对象&#xff0c;现在交由Spring去创建控制。 二、优点 集中管理对象&#xff0c;方便维护&#xff0c;降低耦合度。 三、IOC的底层…

前后端分离使用RSA加密

简介 1、前提 本篇文章前端使用的react&#xff0c;后端用的springboot&#xff0c;前端用什么框架都可以&#xff0c;大体实现逻辑是一样的&#xff0c;而且也是用jsencrypt这个库&#xff0c;只是后端可以我写的&#xff08;大部分是copy的别人的代码&#xff09;用RAS的工…

项目进度延误,危机管理5大注意事项

项目延误危机管理的重要性是不可忽视的。项目延误可能会导致资源浪费、成本增加、客户不满、信誉受损等一系列问题&#xff0c;严重影响项目的成功与效益。因此&#xff0c;有效地进行项目延误危机管理是至关重要的&#xff0c;一般主要是从以下5个方面进行管理&#xff1a; 1、…

Vue3 项目中使用 jsx 详细教程

在Vue 3 项目中使用JSX&#xff08;JavaScript XML&#xff09;可以让你更灵活地创建组件和视图。以下是详细的教程&#xff0c;介绍如何在Vue 3 项目中使用JSX。 步骤 1: 创建一个Vue 3 项目 如果你还没有Vue 3项目&#xff0c;可以使用Vue CLI来创建一个。 # 全局安装Vue …

《动手学深度学习 Pytorch版》 10.6 自注意力和位置编码

在注意力机制中&#xff0c;每个查询都会关注所有的键&#xff0d;值对并生成一个注意力输出。由于查询、键和值来自同一组输入&#xff0c;因此被称为 自注意力&#xff08;self-attention&#xff09;&#xff0c;也被称为内部注意力&#xff08;intra-attention&#xff09;…

竞赛 深度学习人体跌倒检测 -yolo 机器视觉 opencv python

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; **基于深度学习的人体跌倒检测算法研究与实现 ** 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f947;学长这里给一个题目综合评分(每项满…