linux中package是指什么,包管理器如何工作

Admin 2022-08-19 群英技术资讯 379 次浏览

这篇文章将为大家详细讲解有关“linux中package是指什么,包管理器如何工作”的知识,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

在linux中,package指的是包,也即应用程序,也可以是GUI应用程序、命令行工具或者软件库;package本质上是一个存档文件,其中包含二进制可执行文件、配置文件,还会包含有关依赖项的信息。

本教程操作环境:linux7.3系统、Dell G3电脑。

linux中package是什么

包(package)通常是指应用程序,但也可以是 GUI 应用程序、命令行工具或软件库(其他软件程序需要)。包本质上是一个存档文件,其中包含二进制可执行文件、配置文件,有时还包含有关依赖项的信息。

Linux 中的包管理器是什么?

Linux 发行版之间的主要区别之一是包管理系统(the package management)。

简单来说,包管理器是一种工具,允许用户在操作系统上安装、删除、升级、配置和管理软件包。包管理器可以是一个图形应用程序,如软件中心,也可以是命令行工具,如apt-get或pacman。

什么是包?

包(package)通常是指应用程序,但也可以是 GUI 应用程序、命令行工具或软件库(其他软件程序需要)。包本质上是一个存档文件,其中包含二进制可执行文件、配置文件,有时还包含有关依赖项的信息。

以前软件常常从其源代码安装。一般可以参考一个文件(通常名为readme)并查看它需要哪些软件组件和二进制文件的位置。readme通常还包含配置脚本或 makefile。你必须自己编译软件或自行处理所有依赖项(某些软件需要安装其他软件)。

为了摆脱这种复杂的方式,Linux 发行版创建了自己的打包格式,为最终用户提供现成的二进制文件(预编译软件),以及一些元数据(版本号、描述)和依赖项用于安装软件。

大约在 90 年代中期,Debian 创建了 .deb 或 DEB 打包格式,而 Red Hat Linux 创建了 .rpm 或 RPM(Red Hat Package Manager 的缩写)打包系统。编译源代码仍然存在,但现在只是安装软件的一个可选方式。

要与打包系统交互或使用打包系统,还需要一个包管理器。

包管理器如何工作?

包管理器是一个通用概念,并不是 Linux 独有的。你会遇到不同软件或编程语言的包管理器,有专门用于 Python 包的 PIP 包管理器,甚至Atom 编辑器也有自己的包管理器。

几乎所有的 Linux 发行版都有软件存储库,它基本上是软件包的集合。是的,可能有多个存储库。存储库包含不同类型的软件包。

存储库还有元数据文件,其中包含有关软件包的信息,例如软件包名称、版本号、软件包描述和存储库名称等。当你在 Ubuntu/Debian 中使用apt show 命令时,就会看到这些信息。

系统的包管理器首先与元数据交互。包管理器在系统上创建元数据的本地缓存。当你运行包管理器的更新选项(例如 apt update)时,它会通过引用存储库中的元数据来更新此元数据的本地缓存。

当你运行包管理器的安装命令(例如 apt install package_name)时,包管理器会引用此缓存。如果它在缓存中找到包信息,它会使用 Internet 连接连接到适当的存储库,并在安装到系统之前首先下载包。

一个包可能有依赖关系。这意味着它可能需要安装其他软件包。包管理器通常会处理依赖项并将其与你正在安装的包一起自动安装。同样,当年你使用包管理器删除一个包时,它会自动删除或通知你系统有可以清理的未使用的包。

除了安装、删除这些显而易见的任务外,还可以使用包管理器来配置包并根据需要管理它们。例如,你可以阻止从常规系统更新升级包版本。


以上就是关于“linux中package是指什么,包管理器如何工作”的相关知识,感谢各位的阅读,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注群英网络,小编每天都会为大家更新不同的知识。
群英智防CDN,智能加速解决方案
标签: linux中package

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服