Snappy 迁移到新平台

作者:James Darvell

Canonical 的 Snappy 包管理器正迈出 Ubuntu 世界之外的第一步。 现在,您可以在 Arch、Debian、Fedora 和其他几个流行的发行版上安装它。 随着像 Mozilla 这样的开发人员的支持,它可能很快就会成为一个新的“通用标准”。

Snappy 有不少粉丝,也有很多批评者。 它似乎确实在网上引起了一些强烈的情绪。 它会是下一个 systemd 吗?

Snappy 是一种新型的包管理器,它采用了一种非常不同的方法来管理依赖项。 Linux 包管理器使得安装和更新软件相对容易。 它们管理着现代应用程序所依赖的复杂的依赖关系网络。

但有时,这些依赖项的不同版本之间存在冲突。 也许应用程序 A 仅适用于库 X 的 2.3.4 版本。 当您更新到 3.4.5 版本时,应用程序将停止工作。

Snappy 旨在通过在各自理想的环境中运行每个应用程序来解决这些问题。 它本质上为应用程序创建一个容器,为它提供运行所需的所有依赖项。 因此,您可以运行多个依赖于同一库的不同版本的应用程序。 而且,这使得将应用程序部署到多个环境(例如不同的 Linux 发行版)变得更加容易。

这是一个好主意,但并非所有人都喜欢添加另一个“通用标准”的前景。 有些人说 Snappy 违反了 UNIX 哲学——程序应该做好一件事——但 Snappy 做了几件非常复杂的事情。

还有一些人担心安全问题。 如果在一个流行的库中发现了一个安全漏洞,通常会很快得到修复。 Linux 发行版更新他们的存储库,并提醒用户下载并安装更新。

使用 Snappy,各个开发人员必须更新他们的应用程序以使用新版本。 而且,如果他们已经落后几个版本,那可能是一项漫长的任务。 风险在于,某些应用程序将继续运行过时的版本,从而使系统容易受到攻击。

但在某些方面,Snappy 更安全。 由于每个应用程序都被容器化,因此减少了跨进程攻击的风险,但运行过时软件的风险仍然是真实的。

您如何看待 Canonical 的 Snappy? 它会成为一个新的通用标准吗? 我们应该担心增加的复杂性吗? 或者,这是迈向明日世界的大胆一步吗?

加载 Disqus 评论