linux中package是指什么,包管理器如何工作
Admin 2022-08-19 群英技术资讯 379 次浏览
在linux中,package指的是包,也即应用程序,也可以是GUI应用程序、命令行工具或者软件库;package本质上是一个存档文件,其中包含二进制可执行文件、配置文件,还会包含有关依赖项的信息。
本教程操作环境:linux7.3系统、Dell G3电脑。
包(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 连接连接到适当的存储库,并在安装到系统之前首先下载包。
一个包可能有依赖关系。这意味着它可能需要安装其他软件包。包管理器通常会处理依赖项并将其与你正在安装的包一起自动安装。同样,当年你使用包管理器删除一个包时,它会自动删除或通知你系统有可以清理的未使用的包。
除了安装、删除这些显而易见的任务外,还可以使用包管理器来配置包并根据需要管理它们。例如,你可以阻止从常规系统更新升级包版本。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
有两种解决方法:1、利用“vi ~/.bashrc”修改“/.bashrc”文件,在“alias cp=’cp -i’”前加上”#”将其注释掉,并且保存退出后重新登录即可;2、使用cp命令时,在“cp”前添加“\”即可去除提示。
linux进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系统资源。一般来说,linux系统会在进程之间共享程序代码和系统函数库。我们可以通过ps命令来查看当前系统的进程状态。
去年自己参与的一个项目中,有这样的一个需求:在多个目录下都有php脚本,需要去执行这行目录下的所有php脚本。
linux中包含环境变量的配置文件有多个:1、“/etc/profile”文件,该文件配置的环境变量将应用于登录到系统的每一个用户;2、“/etc/bashrc”,修改该文件配置的环境变量将会影响所有用户使用的bash shell;3、“/etc/environment”,该文件包含与系统运行相关但与用户无关的环境变量;4、“~/.profile”;5、“~/.bashrc”。
当我们想测试两台主机之间连通性时,经常会使用ping命令来验证。但你知道该命令和icmp协议之间有什么关联吗?ICMP即网际报文控制协议,是用来报告差错情况以及相关错误信息的。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008