Linux安装软件每次靠百度,这次花了些时间,终于算是搞明白了

Linux下安装命令虽然经常使用,但也仅仅是会使用,每次再用时依然的百度 。于是就花了些时间整体的梳理了一番,以便于更好的理解。

1.安装流程介绍

在Linux下安装软件,其实也是遵循着和Windows一样的安装流程。

首先,从官网网站下载对应软件包到服务器上 。
其次,在服务器上进行安装 。
若将以上步骤换成Linux命令的话,就变成具体如下步骤

下载:wget
安装: 这里的安装有两种方式,分别为:
直接安装二进制包: rpm
直接安装源码:编译安装
当然除了以上方式,为了减少用户操作,Linux也提供了一个可以将以上步骤合二为一的命令,即:yum .这个命令可以将软件安装包自动下载并且安装,非常的方便 。
在这里插入图片描述
可以看出,涉及软件包安装常见的方式有三种,分别是:

  1. 二进制包安装:rpm

  2. 源码编译安装:make & make install

  3. 下载并安装:yum

2.安装包介绍

RPM早期被称为RedHat Package Manager,但由于目前RPM非常流行,且已经成为Linux工业标准。所以RPM现在又被称为RPM is Package Manager。

make是用来编译编译和安装很多开源的工具。

YUM被称为 Yellowdog Updater Modified,是一个使用Python语言开发的前端软件包管理器。YUM主要是对RPM包进行管理。

在这里我们必须要理解两个概念,分别是:

源码文件,这个很好理解,就是开发编写好的代码,发布后的源码一般都将其打成一个.gz或.tgz的压缩包 。所以,我们在官网上下载到常常是一个压缩包,如:redis-5.0.7.tar.gz
二进制文件,简单来说就是Linux的可执行命令文件,比如我们经常使用的一些命令都是二进制文件 。而我们使用到的rpm其实就是将源码文件进行编译成二进制可执行程序并最终打包成rpm格式的安装包 。
在这里插入图片描述
通过上面介绍可以看出 ,我们在Linux下所安装的包一般有两种形式,分别是:

以源码形式存在的压缩包,常见的格式有:.tar.gz , .tgz, .tar.bz2格式 ,如redis-5.0.7.tar.gz
以rpm格式存在的rpm包 。格式为:软件包名-软件版本-软件发布的次数-适合的 Linux平台-适合的硬件平台-包扩展名 ,比如: httpd-2.2.15-15.el6.centsos.1.i686.rpm

3.安装原理介绍
通过以上介绍,我们知道了安装包存在的形式以及安装方式 ,也就是说我们一般拿到的安装主要就两种形式

  1. 源码包,通过make & make install 进行编译安装后变成可运行程序 。

  2. rpm包 , 通过rpm命令或者yum进行安装

具体安装过程如下 :
在这里插入图片描述

通过以上介绍,我们知道了不同的包该使用什么方式安装 。那么它们之间到底有啥区别呢 ?

4.安装命令优缺点

4.1 源码安装优缺点

优点:

安装包的版本可以自由选择 ,选择自己适合的版本
卸载方便 。
开源,有能力可以扩展源代码
缺点:

安装步骤比较多,总体安装时间也比较长
若在编译安装过程中出现问题,问题也更难解决 。

4.2 rpm安装优缺点

优点:

软件已经编译打包,所以传输和安装方便,用户可以免除编环节。
安装也更加方便和快捷
软件信息都已经记录在服务器上,方便查询、升级和卸载 。
缺点:

安装前必须要安装所需要的依赖包
软件包安装的环境必须与打包时的环境一致或相当

4.3 yum安装优缺点

优点:

省去找安装包的过程,一个命令搞定下载和安装 。
最大的好处就是解决了rpm中安装包依赖的问题,yum会自动帮你安装依赖包
缺点:

安装的版本一般比较老,往往不太符合我们要求 。

5.命令介绍

5.1 rpm命令介绍
rpm不仅仅支持安装,也可以查询、升级、卸载、校验等 。不同的功能都是通过以下的选项控制的。
在这里插入图片描述
以上列出的是rpm中一些常用选项,在实际使用中,往往是进行选项的组合 ,比如:

  1. **1.安装某个rpm包: rpm -ivh 包名

  2. 2.查询所有已安装包: rpm -qa

  3. 3.卸载某个已安装包: rpm -e 包名

  4. 4.查询某个包中的详细信息:rpm -ql 包名**

5.2 yum命令介绍

因为yum是基于rpm包进行管理的 ,所以同样也支持了rpm包中的相关功能 。
在这里插入图片描述

以下为具体使用:

  1. 1.显示所有已经安装和没有安装的包:yum list all

  2. 2.只显示已安装的包:yum list installed

  3. 3.只显示没有安装但可以安装的包: yum list available

  4. 4.列出可更新的包:yum list updates

  5. 5.模糊查询:yum search 关键字 ,比如yum search python

  6. 6.安装某软件包:yum install 包名

  7. 7.安装多个包: yum install 包名1 包名2 包名n

  8. 8.安装某个包: yum install -y 包名 , //期间有确认项自动选yes .

  9. 9.更新安装包: yum update 包名

  10. 10.卸载某软件包:yum remove 包名

  11. 11.查询包中的信息:yum info 包名

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

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

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

相关文章

商城业务-检索服务

文章目录 前言一、搭建页面环境1.1 静态界面搭建1.2 Nginx 动静分离1.3 Windows 上传文件1.4 引入 thymeleaf 依赖1.5 Nginx 反向代理1.4 Nginx 配置1.5 gateway 网关配置 二、调整页面跳转2.1 引入依赖2.2 页面跳转 三、检索查询参数模型分析抽取3.1 检索业务分析3.2 检索语句…

【Spring源码分析】透过源码看透Spring事务

阅读此需阅读下面这些博客先【Spring源码分析】Bean的元数据和一些Spring的工具【Spring源码分析】BeanFactory系列接口解读【Spring源码分析】执行流程之非懒加载单例Bean的实例化逻辑【Spring源码分析】从源码角度去熟悉依赖注入(一)【Spring源码分析】…

Java程序运行的问题——异常

什么是异常? Java程序在运行时出现的问题就叫异常 jdk中将异常一新封装成了一个个的类,当出现问题时,就会创建异常对象,抛出异常信息(问题原因、位置) 1.异常 1.1的继承体系 Throwable 是所有错误(erro…

关于OpenFeign的返回类型包装问题

在一天夜里。我在使用feign的调用时,突然出现了一点点问题。 就是对于feign类型的包装问题。产生了疑问。 在后来,也就是今天。在网上取取经。看到了一个答案。说:feign的调用会有一个编码器和解码器。 使用feign的解码器。他的原理也很简…

NineAi3.5 –支持GPT绘图,语音播报,联网访问,上下文关联,语音模式

NineAi3.5 –支持GPT绘图,语音播报,联网访问,上下文关联,语音模式 基于ChatGPT开发的一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话, 还能根据聊天的上下文进行互动&…

热门IT【视频教程】-华为/思科/红帽/oracle

华为认证 网络工程师-入门基础课:华为HCIA认证课程介绍-CSDN博客 网络工程师进阶课:华为HCIP认证课程介绍-CSDN博客 职场进阶,踏上高峰——HCIE-Datacom认证-CSDN博客 华为HCIA试听课程 : 超级实用,华为VRP系统文件…

4核8G服务器租用优惠价格418元一年,可买3年

京东云4C8G云服务器优惠价格418元1年、1899元三年,配置为:轻量云主机4C8G-180G SSD系统盘-5M带宽-500G月流量,京东云主机优惠活动 atengyun.com/go/jd 可以查看京东云服务器详细配置和精准报价单,活动打开如下图: 京东…

【Go】十四、封装、继承

文章目录 1、封装2、继承3、继承的注意点 1、封装 隐藏实现细节保证数据安全(控制变量或方法的访问范围,private) Go中实现封装: 结构体、字段的首字母小写(Java的private)提供一个工厂模式函数&#xf…

SpringBoot+uniApp宠物领养小程序系统 附带详细运行指导视频

文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码1.保存宠物信息代码2.提交订单信息代码3.查询评论信息代码 一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SpringBootuniApp框架开发的宠物领养微信小程序系统。…

数据可视化-ECharts Html项目实战(9)

在之前的文章中,我们学习了如何在ECharts中编写气泡图,词云图。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 数据可视化-ECharts Ht…

vue 文件下载

1.返回路径下载 注: 针对一些浏览器无法识别的文件格式(如pdf、xls、ppt)。可以直接在地址栏上输入URL即可触发浏览器的下载功能。 情况1 //地址栏输入文件URLwindow.location.href URLwindow.open(URL) 注:该方式将下载逻辑放在后端处理&#xff0c…

面试时如何回答接口测试怎么进行

一、什么是接口测试 接口测试顾名思义就是对测试系统组件间接口的一种测试,接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 …

权限提升-Linux系统权限提升篇VulnhubCapability能力LD_Preload加载数据库等

知识点 1、Web或用户到Linux-数据库类型 2、Web或用户到Linux-Capability能力 3、普通用户到Linux-LD_Preload加载so配合sudo 章节点: 1、Web权限提升及转移 2、系统权限提升及转移 3、宿主权限提升及转移 4、域控权限提升及转移 基础点 0、为什么我们要学习权限…

Python接口自动化 —— 什么是接口测试、为什么要做接口测试?

简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试。 什么是接口测试 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各…

C语言-冒泡排序算法

题目描述 设计一个程序,实现冒泡排序算法,并输出{9,8,7,6,5,4,3,2,1,0} 的排序过程。 输出 每个排序过程输出一行,直到排序完成。 样例输出 Expected 9 8 7 6 5 4 3 2 1 0 0 9 8 7 6 5 4 3 2 1 0 1 9 …

HDLbits 刷题 -- Always if

学习: An if statement usually creates a 2-to-1 multiplexer, selecting one input if the condition is true, and the other input if the condition is false. always (*) beginif (condition) beginout x;endelse beginout y;end end This is equivalent …

衍生品交易概况

场内 场外 交易台架构 报价、交易、研究、程序个股、股指Flow、Exotic线性、非线性 对冲管理 管理风险敞口 做好情景分析 尊重市场选择 及时调整策略 理解头寸 善于学习 场外衍生品交易员的一天 盘前 回顾市场、决定今天总体方向处理隔夜敞口 盘中 处理客户询价…

关于 HEAP CORRUPTION DETECTED:after Normal block 错误的原因及解析

目录 一、HEAP CORRUPTION DETECTED:after Normal block 出现的报错情况: 二、问题原因(重要): 三、举例 1.错误代码如下: 2.错误原因及分析(重要): 3.解决方法 ​编辑 4.正…

两数之和-考察哈希表的运用

题目 给定一个整数数组 n u m s nums nums和一个整数目标值 t a r g e t target target,请你在该数组中找出和为目标值 t a r g e t target target的那 两个整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同…