【Linux】Linux安装软件---软件包管理器 yum

主页:醋溜马桶圈-CSDN博客

专栏:Linux_醋溜马桶圈的博客-CSDN博客

giteemnxcc (mnxcc) - Gitee.com

目录

1.Linux中安装软件

1.1 源代码安装 

1.2 rpm包安装

1.3 yum安装

1.3.1 举例

1.3.2 图示yum下载安装

2.Linux系统的生态

如何选择系统

3.Linux 软件包管理器 yum 

3.1 什么是软件包

3.2 关于 rzsz

注意事项

​编辑

3.3 查看软件包

​编辑

注意事项

3.4 如何安装软件

注意事项

3.5 如何卸载软件

3.6 centos yum安装指令指南

3.6.1 搜索

3.6.2 安装

3.7 yum本地配置

3.7.1 配置将来是在干什么?

3.7.2 如何配置?


1.Linux中安装软件

Linux中安装软件一般有三种方式:

  1. 源代码安装
  2. rpm包安装
  3. yum安装

1.1 源代码安装 

有些软件本来就是开源的,如果不想用别人直接发布好的软件,我们就可以把源代码下载下来,在我们的环境中编译,自己安装

但是这个过程非常麻烦,而且可能会遇到很多问题,比如发布这个软件的人是在Ubuntu下发布的,或者在一个老系统下发布的,这时候这个源代码在我们的电脑上不一定编译通过,所以源代码安装过程中最让人头疼的问题就是编译报错

1.2 rpm包安装

由于源代码安装非常麻烦,所以就有一批程序员在各种不同的环境下编译好,形成rpm包(压缩格式),这时候我们直接将这个编译好的程序下载过来就行了

1.3 yum安装

rpm包安装还是有一定的问题,在打包的时候可能不会将一些库打包进去,比如c的库,c++的库,图形化界面的库,所以在rpm包安装的时候有一定概率能安装好,但是也不排除安装不全的可能,这个时候就得我们来解决软件的依赖关系,还是很复杂

所以这时候yum就把所有的依赖关系解决,同时也内置一些下载链接,指向去指定地方下载适合我们自己系统的软件,其他的依赖软件也一并下载好

yum可以说是最简单的安装方式

1.3.1 举例

我们以QQ举例,假如我们在Windows中要安装QQ,然后Tencent说给我们把源代码发过来,让我们自己编译,这岂不是很扯了;或者说只有一部分软件,还缺一些库,让我们自己去把这些库下载下来,同样对我们也是挑战;所以最简单的安装方式就是将软件和依赖的库一同打包好,然后提供一个下载链接

1.3.2 图示yum下载安装

我们在我们的centos上输入yum安装指令,yum就会去centos服务器中查找对应的包,然后下载安装的我们本地的centos,至此一个完整的安装过程完成

我们在centos中输入对应的安装命令,就类似于在应用商店中搜索抖音然后安装,服务器那么多,而yum是怎么知道去哪个服务器下载呢?

很简单,我们的机器内部一定内置了目标服务器的地址链接

2.Linux系统的生态

如何选择系统

假设我们要去选择一个系统,Linux系统各版本的底层都是一样的,Linux各系统的区别不会是简单的系统区别,我们选择一个系统,考虑该系统是否完善是最重要的,系统可用是最基本的要求,还要考虑这个系统有没有社区,有没有维护,文档是否齐全,配套的软件是否丰富

如果这个系统开源社区非常活跃,文档很齐全,配套的软件很丰富,问题暴露很快能够解决,有大量的程序员愿意来开发,更重要的是有很多企业来选择,这时会有很多的企业级应用场景暴露出来,这就是操作系统的生态

系统本身没有区别,主要是当年我们给系统设置的调性,吸引了不同种类的人群,构建了不同种类的社区,暴露了特定种类的问题,以及配套的各种问题的解决方案出来了,这才是系统有差别

我们选择系统并不是区分系统本身,而是区分系统的生态和社区

为了有更多的用户选择,系统的开发者一定会维护好系统的生态和社区

“有需求者,就一定有满足需求的人”

3.Linux 软件包管理器 yum 

3.1 什么是软件包

在Linux下安装软件,一个通常的办法是下载到程序的源代码,并进行编译,得到可执行程序

但是这样太麻烦了,于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安软件包和软件包管理器,就好比 “App” 和 “应用商店“”这样的关系

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

3.2 关于 rzsz

这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件.

安装完毕之后可以通过拖拽的方式将文件上传过去.

注意事项

关于 yum 的所有操作必须保证主机(虚拟机)网络畅通!!!

可以通过 ping 指令验证

ping www.baidu.com

3.3 查看软件包

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

yum list | grep lrzsz

结果如下:

lrzsz.x86_64 0.12.20-36.el7 @base

注意事项

软件包名称:主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.

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

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

最后一列,base 表示的是 "软件源" 的名称,类似于 "小米应用商店","华为应用商店" 这样的概念

3.4 如何安装软件

通过 yum,我们可以通过很简单的一条命令完成 gcc 的安装

sudo yum install lrzsz

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

出现 "complete" 字样,说明安装完成

注意事项

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

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

3.5 如何卸载软件

仍然是一条命令:

sudo yum remove lrzsz

3.6 centos yum安装指令指南

 如果我们在Linux中输入命令发现该命令没有的时候,我们就可以通过yum来安装这个命令

具体分为两步:搜索,安装

3.6.1 搜索

首先搜索centos yum 安装 + 指令

以zip指令为例,在搜索框中输入centos yum 安装zip

3.6.2 安装

复制安装命令到shell,直接安装即可

3.7 yum本地配置

3.7.1 配置将来是在干什么?

yum会根据/etc/yum.repos.d/该路径下面的配置文件,来构成自己的下载路径,(根据OS版本,根据你要下载的软件),yum帮助我们下载,安装

一般的机器,内置的链接地址是centos的官网,软件链接都指向的是国外的,yum可能会比较慢,所以需要配置

3.7.2 如何配置?

本质都是更改文件,或者更改文件的内容

CentOS 7如何配置yum源「建议收藏」-腾讯云开发者社区-腾讯云 (tencent.com)

 使用yum一般都是要联网的

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何构建Docker自定义镜像

说明:平常我们使用Docker运行各种容器,极大地方便了我们对开发应用的使用,如MySQL、Redis,以及各种中间件,使用时只要拉镜像,运行容器即可。本文介绍如何创建一个Demo,自定义构建一个镜像。 开…

酷开科技聚焦大屏端数据研究,构建酷开系统深度挖掘大屏商业价值

中国所有的彩色大屏中,智能电视规模已经过半,OTT平台的数据价值越发引起人们关注。作为OTT行业的头部代表,酷开科技一直聚焦大屏端数据研究,目前已经形成一套基于大屏指数的智慧营销体系,让OTT大屏的数字营销化水平实现…

开源工具专题-02 Confluence企业级wiki

开源工具专题-02 Confluence企业级wiki 注: 本教程由羞涩梦整理同步发布,本人技术分享站点:blog.hukanfa.com 转发本文请备注原文链接,本文内容整理日期:2024-3-20 csdn 博客名称:五维空间-影子&#xf…

使用libdivsufsort库构建后缀数组

libdivsufsort是一个C语言库,用于构建后缀数组(Suffix Array)以及执行与后缀数组相关的操作。后缀数组是一种数据结构,用于有效地解决字符串处理问题,如字符串匹配、最长公共子串等。这个库的目标是提供高效、可移植和易于使用的后缀数组实现。 https://github.com/y-256…

我的自建博客之旅06之Mrdoc

这个是我折腾笔记项目的最后一篇文章了,这个项目是类似于语雀的文档笔记项目,因为我当初想找一个既可以当做笔记,又可以作为团队文档分享的笔记,除了语雀,就发现了这个项目。 这个开源项目的界面或者文档组织方式其实是我最喜欢的,但是我后来放弃它的原因是它的后台编辑逻…

Android StateLayout状态页

文章目录 Android StateLayout状态页概述源码使用源码下载 Android StateLayout状态页 概述 StateLayout(状态页)包含:加载中页面,错误页面,空页面,内含状态默认页面,支持自定义页面。 源码 …

提高WhatsApp营销效果:如何在WhatsApp上增加打开率和提高转化率?

提高WhatsApp营销效果:如何在WhatsApp上增加打开率和提高转化率? WhatsApp是一款广受欢迎的社交应用程序,不仅可以用于个人通讯,也可以用于企业营销。许多企业已经开始在WhatsApp上进行营销活动,但是如何提高营销效果…

极佳文件备份工具支持独占文件备份

1 指定备份的文件夹或者分区盘符 或者子文件夹dir1;dir2;dir3; 2 指定备份到哪里 例如disk1 E分区内的backup文件夹 3 指定备份周期 每日几点几分备份,每周几 几点几分备份 或者 间隔几时几分备份 4 备份模式 单向 将数据源文件夹 完整复制到 目标文件夹, 包括正…

JavaScript高级(十八)---进程和线程,宏任务和微任务

进程和线程 进程(process):计算机已经运行的程序,是操作系统管理程序的一种方式,我们可以认为,启动一个应用程序,就会默认启动一个进程(也可能是多个进程)。 线程&…

【现代C++】移动语义和右值引用

现代C中的移动语义和右值引用是C11引入的重要特性,旨在优化资源管理和提升性能。这些特性允许资源的转移而非复制,特别是对于临时对象和大型对象。 1. 右值引用 右值引用是对临时对象的引用,它允许你修改临时对象。使用&&来声明右值…

阿里云效flow流水线构建时内存不足

云效flow流水线构建时内存不足 报错截图 咨询阿里云后建议自己搭建私有化集群 https://help.aliyun.com/document_detail/201868.html?spm5176.2020520104.0.0.481b3f1bw2Mr1v 搭建地址 打开流水线,只有管理员和拥有者才能看到这个菜单 注意:构建集群…

【数组、字符串】算法例题

每个题的【方法1】是自己的思路,【其他方法】是力扣上更优的解题思路 目录 一、数组、字符串 1. 合并两个有序数组 ① 2. 移除元素 ① 3. 删除有序数组中的重复项 ① 4. 删除有序数组中的重复项 II ② 5. 多数元素 ① 6. 轮转数组 ② 7. 买卖股票的最佳时机…

[leetcode] 45. 跳跃游戏 II

文章目录 题目描述解题方法贪心java代码复杂度分析 题目描述 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i j] 处: 0…

【二分查找】算法例题

目录 十八、二分查找 114. 搜索插入位置 ① √- 115. 搜索二维矩阵 ② 116. 寻找峰值 ② √- 117. 搜索旋转排序数组 ② 118. 在排序数组中查找元素的第一个和最后一个位置 ② √ 119. 寻找寻钻排序数组中的最小值 ② 120. 寻找两个正序数组的中位数 ③ 136. 直线上最多…

MTLAB 批量下载 脑医学图像数据集BrainWeb: Simulated Brain Database

MTLAB 批量下载 脑医学图像数据集BrainWeb: Simulated Brain Database BrainWeb数据集的网址:https://brainweb.bic.mni.mcgill.ca/brainweb/ 1. 了解 BrainWeb: Simulated Brain Database 这是一个模拟大脑数据的数据库(SBD,Simulated Br…

京师心智心理健康测评系统 MyReport.ashx 信息泄露漏洞复现

0x01 产品简介 京师心智心理健康测评系统由心理学专家指导研发,使用先进的测试方法,通过一系列的数据处理将人的心理特征数量化,以此来衡量个体心理因素水平以及心理差异,帮助开展标准化心理健康工作。 0x02 漏洞概述 京师心智…

Java基础---反射

什么是反射? 反射允许对成员变量,成员方法和构造方法的信息进行编程访问。 这么说可能比较抽象,可以简单理解为:反射就是一个人,可以把类里面的成员变量,成员方法,构造方法都获取出来。 并且可…

论文阅读——EarthPT

EarthPT: a time series foundation model for Earth Observation 一个Earth Observation (EO)预训练的Transformer。EarthPT是一个7亿参数解码Transformer基础模型,以自回归自监督方式进行训练,并专门针对EO用例进行开发。我们证明了EarthPT是一个有效的…

ArkTs :5 分钟学会鸿蒙开发语言关键知识

ArkTS 是 HarmonyOS 首选的开发语言,它在 TypeScript 的基础上做了一些优化和扩展,继承了 TypeScript 的优点,屏蔽了 TypeScript 的缺点,和 ArkUI 框架一起构建了鸿蒙应用,这篇文章我们主要介绍 ArkTS。 ArkTS 设计初…

【机器学习】TinyML的介绍以及在运动健康领域的应用

🧑 作者简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导…