我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux系统中包管理器的演变是怎样的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux系统中包管理器的演变是怎样的

本篇文章给大家分享的是有关Linux系统中包管理器的演变是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

每个电脑设备都使用某种形式的软件来执行其预定任务。在软件开发的早期,对产品进行了严格的bug和其他缺陷测试。在过去的十多年里,软件通过互联网发布,目的是通过应用新版本的软件来修复任何错误。在某些情况下,每个应用程序都有自己的更新程序。在其他情况下,则由用户自己决定如何获得和升级软件。

Linux早期采用了维护集中位置的做法,用户可以在这里查找和安装软件。

在软件包管理器之前,Linux上的软件是如何安装的?

从历史上看,软件要么是通过FTP提供的,要么是通过邮件列表提供的(最终这个发行版将包括基本网站)。只有几个小文件包含了创建二进制文件的指令(通常在tarfile中)。您将解压缩文件,读取自述文件,只要您有gcc或其他形式的C编译器,您通常会运行一个./configure带有一些属性列表的脚本,例如将文件粘贴到库文件、创建新二进制文件的位置等。此外,configure进程将检查您的系统是否存在应用程序依赖关系。如果缺少任何主要需求,配置脚本将退出,在满足所有依赖关系之前无法继续安装。如果成功完成配置脚本,则Makefile都会被创造出来。

什么是包裹?

软件包是为了对抗这种复杂性而发明的。为了便于移植和存储,包将多个数据文件一起收集到一个存档文件中,或者简单地压缩文件以减少存储空间。包中包含的二进制文件是根据开发人员选择的正常默认值预编译的。包还包含元数据,如软件名称、用途说明、版本号和软件正常运行所需的依赖项列表。

虽然包本身并不直接管理依赖项,但它们在Linux软件管理方面向前迈进了一大步。

什么是软件存储库?

几年前,在智能手机泛滥之前,对于许多用户来说,如果他们没有参与Linux生态系统的话,建立一个软件存储库的想法是很难理解的。到目前为止,大多数Windows用户似乎仍然需要打开网页浏览器来搜索和安装新的软件。然而,那些拥有智能手机的人已经习惯了软件“商店”的想法。智能手机用户获取软件的方式和软件包管理器的工作方式并无不同。虽然已经有几次尝试为软件库创建一个有吸引力的UI,但绝大多数Linux用户仍然使用命令行来安装软件包。软件存储库是系统配置要使用的任何存储库的所有可用软件的集中列表。

下面是一些最著名的包管理器的简要概述:

基于rpm的包管理器

更新基于RPM的系统,特别是那些基于RedHat技术的系统,有着非常有趣和详细的历史。实际上,当前版本的百胜(用于企业发行版)和DNF(对于社区)组合了几个开源项目,以提供它们当前的功能。

最初,RedHat使用了一个名为rpm(红帽包管理器),至今仍在使用。但是,它的主要用途是安装RPM,这是您在本地拥有的,而不是搜索软件存储库。包管理器名为up2date创建的目的是通知用户包的更新,并使他们能够搜索远程存储库并轻松安装依赖项。在达到目的同时,一些社区成员认为up2date有一些明显的缺点。

目前对百胜的咒语来自几种不同的社区努力。YellowdogUpdater(YUP)是由Terra软件解决方案公司的人员在1999-2001年开发的,作为图形化安装程序的后端引擎。黄狗Linux。杜克大学喜欢是的想法,并决定改进它。他们创造了改良的黄狗更新器(Yum)它最终被改造成帮助管理大学的红帽Linux系统。百胜越来越受欢迎,据估计,到2005年,它将被Linux市场的一半以上所使用。今天,几乎所有使用RPM的Linux发行版都使用YUM进行包管理(除了一些显著的例外)。

基于debian的包管理器

Debian是目前维护最古老的Linux发行版之一,它的系统非常类似于基于RPM的系统。他们用.deb包,可以由名为dpkg. dpkg非常类似于rpm因此,它是为管理本地可用的包而设计的。它不进行依赖解析(尽管它进行依赖检查),也没有与远程存储库交互的可靠方法。为了提高用户体验和易用性,debian项目委托了一个名为神灵。这个代号最终被放弃,改为高级包装工具(APT).

基于ARCH的软件包管理器

ARCH Linux使用名为帕克曼。不像.deb或.rpm文件,Pacman使用了更传统的tarball和LZMA 2压缩(.tar.xz)这使得Arch linux包比其他形式的压缩存档要小得多(例如gzip)最初是在2002年发布的,Pacman已经得到了稳步的迭代和改进。Pacman的主要优点之一是它支持拱筑体系,一种从源构建包的系统。构建系统包含一个名为PKGBUILD的文件,该文件包含元数据(例如版本号、修订、依赖项等)以及一个shell脚本,其中包含编译符合Arch Linux要求的包所需的标志。然后将产生的二进制文件打包到上述文件中。.tar.xz文件供帕克曼使用。

这个系统导致创建了ARCH用户库(Aur)是一个社区驱动的存储库,包含PKGBUILD文件和支持补丁或脚本。这使得几乎无穷无尽的软件可以在Arch中获得。这个系统的明显优点是,如果用户希望向公众提供软件,他们不需要经过官方渠道才能在主要存储库中接受软件。缺点是它依赖社区管理,类似于码头枢纽,CANTEN的快照包,或其他类似的机制。有许多特定于Aur的包管理器,它们可以用于从Aur中的PKGBUILD文件中下载、编译和安装。

当然,这里只触及包管理器所能做的事情的表面。还有很多其他的包管理器,我无法在这个空间中介绍。一些发行版,比如Ubuntu或ElementOS,已经竭尽全力提供了一种图形化的包管理方法。

以上就是Linux系统中包管理器的演变是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux系统中包管理器的演变是怎样的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux系统中包管理器的演变是怎样的

本篇文章给大家分享的是有关Linux系统中包管理器的演变是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。每个电脑设备都使用某种形式的软件来执行其预定任务。在软件开发的早期
2023-06-05

linux系统进程管理是怎样的

本篇内容介绍了“linux系统进程管理是怎样的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、进程与线程的概念来源百度百科:进程(Proc
2023-06-22

RedHat系Linux中的rpm包管理系统是什么

这篇文章将为大家详细讲解有关 RedHat系Linux中的rpm包管理系统是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在linux世界里流行两种包管理方式,分别是redhat系的rp
2023-06-10

SUSE Linux的Zypper包管理器使用方法是怎样的

SUSE Linux的Zypper包管理器使用方法是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Zypper是SuSE Linux中用于安装,更新,删除软件,管理存储库
2023-06-15

Linux磁盘及文件系统管理是怎么样的

Linux磁盘及文件系统管理是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。磁盘基本概念磁盘 分区 MBR GPT格式化好的分区都有一个 lost+found 目录
2023-06-06

【Linux系统】第三篇:Linux中软件包管理器yum的使用

文章目录 一、yum1、 什么是软件包和软件包管理器2、 什么是yum3、 Linux下软件安装的几种方式4、 使用yum的注意事项5、 yum的使用 二、Linux / Windows下的数据互传1、 lrzsz的安装2、rz
2023-08-20

linux内核管理不包含的子系统是哪个

本篇内容介绍了“linux内核管理不包含的子系统是哪个”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!linux
2023-02-17

CentOS管理相关系统是怎样应用的

这篇文章将为大家详细讲解有关CentOS管理相关系统是怎样应用的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。CentOS管理系统的特性,既可作为高校计算机专业CentOS管理学习,也可以作
2023-06-16

Linux系统中Docker容器化应用的配置变更管理

在Linux系统中,使用Docker容器化应用时,配置变更管理是一个重要的环节。以下是一些建议和方法,以确保配置变更能够顺利进行,同时保持应用的高可用性和稳定性。1. 使用Docker ComposeDocker Compose是一个用
Linux系统中Docker容器化应用的配置变更管理
2024-10-06

怎么用dpkg命令在Debian系的Linux系统中管理软件包

小编给大家分享一下怎么用dpkg命令在Debian系的Linux系统中管理软件包,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!dpkg 意即 Debian 包管理
2023-06-16

在systemd下管理Linux系统的时间和日期的方法是怎样的

在systemd下管理Linux系统的时间和日期的方法是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。timedatectl是用来查询和修改系统时间和配置
2023-06-13

Linux系统中的Mysql安装过程是怎样的

这期内容当中小编将会给大家带来有关Linux系统中的Mysql安装过程是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Mysql是 Oracle 旗下得一款产品,属于关系型数据库,在 WEB 应用方
2023-06-28

Linux中文件系统的目录结构是怎样的

这篇文章主要介绍“Linux中文件系统的目录结构是怎样的”,在日常操作中,相信很多人在Linux中文件系统的目录结构是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux中文件系统的目录结构是怎样的
2023-06-12

在Linux系统中安装Docker的过程是怎样的

在Linux系统中安装Docker的过程是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在这篇博客中,我将引导您通过简单的步骤完成安装 Docker 的过程,安装dock
2023-06-22

基于struts2开发的试题库管理系统是怎样的

这篇文章将为大家详细讲解有关基于struts2开发的试题库管理系统是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、研究的现状、意义(包括选题背景、意义、国内外研究现状等)1.1 国
2023-06-02

CentOS系统中Redhat的两大Linux产品系列是怎样的

本篇文章为大家展示了CentOS系统中Redhat的两大Linux产品系列是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Linux是GNU/Linux的缩写,通常指各种Linux发行版的通称
2023-06-16

Linux系统中的分区管理器有哪些

小编给大家分享一下Linux系统中的分区管理器有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Linux 中的 5 个管理磁盘分区的工具下面的列表没有特定的排
2023-06-28

Java实现学生信息管理系统的流程是怎样的

这篇文章给大家介绍Java实现学生信息管理系统的流程是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、项目简述功能包括: 用户的登录注册,学生信息管理,教师信息管理,班级信 息管理,采用mvcx项目架构,覆盖增
2023-06-25

编程热搜

目录