snap,snap和Snappy指的是什么?


14

我(广泛地)了解快速包装的工作原理。但是“ snap”,“ snapd”和“ Snappy”分别指的是什么?

似乎“快照”指的是很多东西(软件包格式,终端命令...),“快照”是特定工具,不再使用“ Snappy” [1] [2]?

[1]:我唯一能找到的官方提述是此Ubuntu桌面页面的标题和URL:https : //www.ubuntu.com/desktop/snappy

[2]:我记得Ubuntu Core曾经被称为Snappy Ubuntu Core,但是现在不再如此了:https : //developer.ubuntu.com/core


你让snapcraft.io烦恼了吗?:你可以找到很多你想知道有什么snapcraft.io/...
马克·柯比

Answers:


19

  • 捕捉:一种特定的打包格式,定义为squashfs映像,其中包含meta/snap.yaml遵循特定格式的文件。
  • 快照存储:快照的中央存储库,可从中下载/安装快照。
  • Snapcraft:一种用于创建快照的命令行工具(可以将pbuilder用于快照)并将其放置在存储中(可选)。
  • 快照:运行快照(从商店下载快照,将其安装到位,限制它们,从其中运行应用程序等)所需的守护程序。Snapd还包括snap用于与Snapd通信的命令(供用户请求安装新的Snap等)。

整个系统有时被称为“快照”。令人困惑的是,我也越来越多地看到它被称为“ snapcraft”。虽然快照可以在普通的Ubuntu(以及实际上是其他各种Linux发行版)上运行,但Ubuntu Core是完全基于快照的操作系统(完全没有apt)。不幸的是,已经有一个“ ubuntu核心”,它是Ubuntu的基本rootfs,因此要区分一下,它被称为“ snappy ubuntu核心”。最近,旧的核心已重命名为ubuntu base,这就是为什么您最近很少看到“ snappy ubuntu核心”的原因。



...好吧,那又是什么呢?
兔子

2

Snappy是最初由Canonical为Ubuntu手机操作系统设计和构建的软件部署和程序包管理系统。名为“快照”的软件包和使用它们的工具为“快照”,它们可在各种Linux发行版中使用,因此可以独立于上游部署软件。该系统设计用于电话,云,物联网和桌面计算。

“ Snap”软件应用程序包是独立的,并且可以在一系列Linux发行版中工作。这与传统的Linux软件包管理方法(例如APT或RPM)不同,传统的Linux软件包管理方法需要在应用程序更新时按Linux发行版对软件包进行专门调整,从而延迟了从开发人员到其软件最终用户的应用程序部署。快照本身不依赖于任何外部存储(“应用商店”),可以从任何来源获取,因此可以用于上游软件部署。在Ubuntu和其他版本的Linux上部署快照时,Ubuntu应用程序商店将用作默认后端,但也可以启用其他商店。

开发人员可以使用快照创建命令行工具,后台服务以及桌面应用程序。使用快照应用程序,可以通过原子操作或增量进行升级。

在2016年6月,snap被移植到广泛的Linux发行版中,从而使snap可以在所有Linux发行版中使用,而不仅仅是全快照的Ubuntu Core。snapd也可用于Arch Linux,CentOS,Debian,Fedora,Gentoo Linux,OpenWrt,openSUSE和Red Hat Enterprise Linux。每个发行版都能够解释快照元数据,以特定于发行版的方式实现快照的安全性或其他期望。

资料来源:https : //en.wikipedia.org/wiki/Snappy_(package_manager)


1
这来自维基百科...是否有任何第一方消息来源确认仍使用“ Snappy”这个名称?
david.libremone

我也在寻找精确的定义,而不是详细介绍snap的工作原理,我更新了我的问题以更好地反映这一点
david.libremone

1
抱歉,在复制并粘贴该笑之前,我没有看到您的代表。如果我
先看了
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.