当前位置: 首页>>技术问答>>正文


快照,appimage,flatpak和其他有什么区别?

, , ,

问题描述

我最近从学生那里得到了这个问题,虽然我有很多信息要提供,但我找不到一个可以指示人们可以阅读更新答案的来源(我发现了很多错误的信息和过时的信息) )。因此,在通用包装系统的演变过程中,我对包装格式(如snap,appimage,flatpak等)的一些问题是:

  • 谁创建了包格式?

  • 它提供什么功能?

  • 它的独特之处是什么? (其他人还没有)

  • 谁支持它?

  • 什么发行版使用它?

  • 这个包有什么重点? (适用于桌面,云端,移动等..)

  • 哪些更积极发展?

最佳解决思路

以下是AppImage与Snap与Flatpak功能的长表格比较。它来自AppImage Wiki on GitHub

snap,appimage,flatpak,ubuntu

次佳解决思路

快照由Canonical为Ubuntu创建。快照的主要优点是:

  • 独立于依赖 – 所有库和依赖项都包含在包中。这也允许具有相同程序的更多版本。

  • 沙盒 – 快照使用修改后的AppArmor来沙箱应用程序

  • 增量更新 – 快照还应允许增量更新

快照的主要缺点是软件只能使用其包中包含的库。这是一个潜在的安全风险,因为程序包的作者需要对所有库进行修补和更新。

Snaps目前可以在Ubuntu,Arch Linux,Fedora,Linux Mint,CentOS和Gentoo中运行。它们也用于Ubuntu Touch。它们专为台式机,服务器,电话,物联网和路由器而设计。

Flatpak具有与按扣相同的优点。但是,它使用命名空间而不是AppArmour进行沙盒。主要区别在于Flatpaks既可以使用包中包含的库,也可以使用另一个Flatpak的共享库。

Flatpak的开发人员是Red Hat员工Alexander Larsson。 Flatpak软件目前可在Arch Linux,Debian,Fedora,Mageia,Solus和Ubuntu中使用。它仅专注于桌面。

AppImages由Simon Peter开发。与Snap或Flatpak一样,该软件包包含运行该程序所需的所有库。 AppImage程序不是沙盒,它们不需要root权限来运行。根据该项目的网站,AppImages应该在Arch Linux,Centos,Debian,Fedora,OpenSUSE,Red Hat Linux和Ubuntu上运行。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/3056.html,未经允许,请勿转载。