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视频教程
以上就是linux中package是什么的详细内容,更多请关注其它相关文章!