当前位置: 首页 > 科技观察

Linux跨发行版通用的三大软件包管理器

时间:2023-03-13 02:03:02 科技观察

前言本文主要介绍Linux系统跨发行版通用的三大软件包管理器。Linux系统上的包管理可能非常混乱,尤其是对于新手而言,因为不同的Linux发行版使用不同的包管理系统。在大多数情况下,最令人困惑的部分是包依赖项的解析和管理。例如,Debian及其衍生的Ubuntu使用.deb和dpkg包管理系统,RHEL(RedHatEnterpriseLinux)家族使用.rpm包及其相应的管理工具。随着通用包管理工具或跨发行版包管理工具的兴起,Linux生态系统中的包管理和分发在过去几年发生了变化。这些工具允许开发人员将他们的软件或应用程序从单个构建打包到多个Linux发行版,这使用户可以轻松地在多个受支持的发行版上安装相同的包。在本文中,我们将介绍三种比较流行的开源通用或跨发行版Linux包管理系统。1.snapsnap是一个流行的开源应用程序,它也是一个包管理系统,由UbuntuLinux的制造商Canonical开发。多个Linux发行版现在支持快照,包括Ubuntu、Debian、Fedora、ArchLinux、Manjaro和CentOS/RHEL。snap应用程序是一个跨发行版应用程序,它捆绑了所有依赖项(或没有),以便在任何支持snap的Linux发行版上轻松安装。Snap可以在桌面、服务器、云或物联网上运行。要创建快照应用程序,您可以使用框架snapcraft和强大的命令行工具来构建快照。要在Linux中安装和使用snap,需要安装snapd(或snappydaemon),这是一个后台服务,可以让Linux系统使用.snap文件。snap的实际安装是使用snap命令行工具完成的。默认情况下,快照是安全的。重要的是,需要访问超出其限制的系统资源的snap使用由snap的创建者根据snap的需要精心挑选的接口。这使您能够在不影响基本操作系统的稳定性和灵活性的情况下运行应用程序。另外,snap包管理系统使用一个叫做channel的概念(由track、risklevel、branch组成,细分)来决定安装和跟踪哪些snap版本更新。Snaps也可以自动更新,这是一个可以手动管理的过程。2.flatpakflatpak是一个著名的开源框架,用于在Linux发行版上分发桌面应用程序。Flatpak由独立社区开发,允许在几乎任何Linux发行版上安装和运行单个应用程序构建。它支持Fedora、Ubuntu、RHEL、CentOS、OpenSUSE、ArchLinux等共25个发行版,也可以在RaspberryPi上运行。Flatpak的运行时提供了一个应用程序可以利用的公共库平台。但是,它也使得完全控制依赖项变得极其容易,并且您可以将自己的库捆绑为应用程序的一部分。Flatpak提供易于使用的构建工具,并为开发人员提供一致的环境来构建和测试他们的应用程序(跨设备相同,类似于用户已有的)。Flatpak是向前兼容的,即同一个flatpak可以运行在同一个发行版的不同版本上,包括开发者尚未发布的版本。它还努力并继续与新版本的Linux发行版兼容。如果您是一名开发人员,您可以通过Flathub将您的应用程序提供给Linux用户,Flathub是一种用于在所有发行版上分发应用程序的集中式服务。3.AppImageAppImage也是一种开源的包格式,允许开发者一次打包一个应用程序,它可以运行在所有主要的Linux桌面发行版上。与以前的包格式不同,AppImages不需要安装任何包。只需下载您打算使用的应用程序,使其可执行,然后运行它——就这么简单。它支持大多数32位和64位Linux桌面。AppImage有很多优点。对于开发人员而言,它使他们能够接触到尽可能多的用户,而不管他们运行的是哪个Linux发行版。对于用户来说,他们不需要担心应用依赖,因为每个AppImage都捆绑了它的所有依赖(一个应用等于一个文件)。使用AppImage试用新版本的应用程序也很容易。行政管理员不再通过阻止普通用户安装软件来保证系统的安全性和一致性。使用AppImage,系统保持完整,因为用户无需安装应用程序即可运行它们。通用交叉分发包格式是用于在Linux生态系统中构建和分发软件的下一代技术。然而,传统的包管理系统仍然有一席之地。原文链接:https://www.linuxrumen.com/rmxx/1815.html