【Linux 学习笔记】十二、深入了解 linux 软件包管理

2024-11-19 0 390

【Linux 学习笔记】十二、深入了解 linux 软件包管理

常常,我们手头有了软件文件,可是一运行或安装,问题就层出不穷。有时候,电脑里没有编译器,却能运行二进制文件,这情形挺让人好奇。这其中的奥秘,下面我会一步步揭晓。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

编译性语言文件的处理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

若下载的是用c这类编译性语言编写的源码包,首要任务是安装相应的编译器。以2023年开发的一个小工具为例,它是用c语言编写的,若要运行源码文件,必须先确认电脑上已安装c编译器。只有编译器安装妥当,才能将源码编译成二进制命令文件,然后直接运行这些二进制文件。这个过程,就像是将写好的代码转化为最终成果,是呈现可运行结果的关键。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

具体来说,不同操作系统的编译器安装方法各有差异。以Linux系统为例,安装c编译器通常需要借助命令行执行包管理工具,例如在Ubuntu系统中,可以使用这样的命令:sudoapt-getinstallgcc。至于Windows系统,可能需要先从官网下载安装包,然后依照安装向导逐步进行。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

解释性语言文件的操作

若下载的源码文件是用php、bash等解释型语言编写的,那处理方式就不能像编译型语言那样简单。举个例子,若某个开发项目中需要运行用php编写的脚本,你便需要在机器上安装php解释器,以构建相应的语言环境。这类文件在执行时,是边解释边编译的,每次执行都离不开解释器的支持。

同时,解释器对各种版本的解释性语言支持各异。2022年,我参与的一个项目就遇到了这样的难题。旧版解释器对新版PHP脚本中的某些功能不支持,必须升级解释器才能正常使用。这充分说明了及时更新解释器的重要性,否则源码文件将无法顺利运行。

二进制包的执行优势

下载二进制包确实方便许多。比如,在公司服务器上安装nginx时,我们只需下载nginx-1.10.rpm这个二进制包,无需在电脑上搭建语言环境。解压这个包后,即可直接执行。即便用vim打开rpm文件,正如之前所说,内容难以理解,但我们可以通过其他命令来操作这个文件。

在Windows系统中,某些软件的安装文件本质上类似于二进制包,下载后即可直接执行安装。这类文件无需额外准备大量的环境配置文件或工具。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

rpm命令的功能类比

【Linux 学习笔记】十二、深入了解 linux 软件包管理

Linux系统里的rpm命令功能相当于Windows系统的“控制面板”,相当关键。比如,我们在服务器上想要查看已安装软件的信息,如果不指定软件名直接执行rpm-qa,会出现大量文件信息,这就像在Windows的控制面板中可以看到所有已安装的应用程序。在服务器日常维护或个人电脑软件管理中,这样的功能能帮助我们更好地了解软件安装情况,便于操作。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

2021年,我负责管理一台服务器,当时我使用rpm-qa命令来检查系统中软件是否存在安全漏洞。这项操作在软件管理体系中占据着至关重要的地位。

离线获取rpm包的方式

【Linux 学习笔记】十二、深入了解 linux 软件包管理

若服务器处于离线状态,我们可以通过本地光盘镜像文件来获取rpm包。这需要事先下载好软件的rpm包,然后将其复制到目标服务器上,并完成安装。这就像建立一个独立的小实验室,在没有网络的情况下,提前从有网络的地点下载好所有必要的软件包,以确保在离线状态下也能顺利安装软件。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

以前,我参与过一个小的项目。在这个项目中,需要在没有网络的机房内安装vim编辑器。这就要求我从现有的光盘镜像文件中寻找相应的rpm安装包。然而,在安装过程中,遇到了vim版本及依赖项的问题,这给操作带来了不小的麻烦,不得不手动解决。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

软件安装中的细节考量

【Linux 学习笔记】十二、深入了解 linux 软件包管理

这里有许多软件安装的细节需要注意,比如安装vim时,版本号后面的数字与当前的安装状态紧密相连。我之前试过安装7.4.16xxx.rpm版本的vim,这个版本是虚拟机光盘里mini操作系统软件的一部分,尽管尝试了好多次,但始终无法安装成功。卸载时也存在问题,像使用“yumvim-y”这样的卸载方法并不能完全卸载,残留的配置文件或依赖可能会影响后续操作。安装nginx时,参数配置也是一个问题,比如参数设置为“/opt/”,就意味着要将nginx安装到这个目录下。采用这种自定义安装方式,就不会像yum或rpm默认安装那样在默认路径下产生大量文件,之后也不会有难以删除的残留文件。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

看过这么多,自己动手安装软件或运行文件时,你是否有过特别的体验或遇到难题?若觉得这篇文章对你有帮助,不妨点个赞,也欢迎分享给他人。

【Linux 学习笔记】十二、深入了解 linux 软件包管理

【Linux 学习笔记】十二、深入了解 linux 软件包管理

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

七爪网 行业资讯 【Linux 学习笔记】十二、深入了解 linux 软件包管理 https://www.7claw.com/2796399.html

七爪网源码交易平台

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务