Fedora Silverblue 入门:Fedora Linux 的纯 Flatpak 版本

Fedora Linux 是最著名的 Linux 操作系统版本之一。这个由 Red Hat 赞助的社区运行的 Linux 发行版以开发和引入最终进入其他 Linux 发行版的软件而自豪。

Fedora Silverblue 以不同于传统 Linux 桌面模型的方式打包和使用该软件,这可能成为 Fedora 以及其他 Linux 发行版的前进方向。您今天已经可以使用它了,这就是您可能想要的原因。

什么是 Fedora Silverblue?

Fedora Silverblue 是一个rpm-ostreeFlatpak为中心的 Fedora Linux 版本。简而言之,这为 Linux 提供了在手机和 Chromebook 上看到的那种安全性和应用程序分发。要了解 Fedora Silverblue,首先要了解这两项技术会有所帮助:

什么是 rpm-ostree?

Silverblue 不是分发由数百个程序包组成的操作系统,而是将您的系统作为单个映像提供。当更新到达时,Silverblue 不会下载特定包的较新版本,例如在后台运行的系统组件和库,而是提供一个包含这些更新的较新映像。

这带来了一些很大的好处。一是稳定性。您的系统不会因为单个软件包丢失或损坏而无法启动或出现故障。相反,您的系统是一个大的全有或全无的图像。但是,如果确实出现了问题,您可以通过使用已知有效的先前映像进行引导来轻松消除错误。

什么是 Flatpak?

Flatpak 是一种通用应用程序格式,可让您在几乎任何 Linux 发行版上安装应用程序。这是对不通用的传统软件包(如 DEB 和 RPM)的替代。使用 DEB 包的发行版,例如 Debian 或 Ubuntu,无法安装 RPM 包,反之亦然。

Flatpaks 还具有额外的安全优势。每个应用程序都是一个沙箱,与系统的其余部分隔离。要让应用访问其他组件(例如您的文件或网络摄像头),您必须授予它权限。

Fedora Silverblue 入门

安装 Fedora Silverblue 的方式与安装 Fedora Workstation 的方式相同。您可以前往同一个网站getfedora.org并向下滚动直到看到 Silverblue,或者您可以直接前往Silverblue 网站下载必要的 ISO。

如果您熟悉 Fedora Linux 或 Red Hat Enterprise Linux 中的安装程序,那么您已经知道在 Silverblue 中会发生什么。新手会发现该过程与在 Microsoft Windows 上安装应用程序类似,在该过程中,经常单击“下一步”按钮最终会导致安装您想要的软件。

重新启动到新系统后,您将看到一个原始的 GNOME 桌面和 GNOME Tour 应用程序,它向您介绍了 GNOME 的工作方式。在这一点上,您还没有遇到 Fedora Silverblue 和 Fedora Workstation 之间的区别,但您即将遇到。

如何安装更新

您需要在新系统上做的第一件事就是安装更新。您可以打开 GNOME 软件并尝试查看可用更新,但这可能会也可能不会。无论好坏,这都不是 Fedora Silverblue 特有的问题。我发现 GNOME 软件也是在 Fedora 工作站上显示和安装更新的不可靠工具。

如果 GNOME 软件工作正常,您将看到“重新启动和更新”的提示。与 Fedora Workstation 不同,您无需在重新启动后等待 Fedora 安装您的软件包。相反,Silverblue 将简单地使用您刚刚下载的较新的系统映像开始备份。

如果您使用 Linux 的时间已经足够长,那么 GNOME 软件不工作似乎不是什么大问题。您可能已经习惯于通过命令行安装更新。这并不是因为它是在 Linux 上安装更新的唯一或最简单的方法,而是因为命令行通常可以更快地完成工作,并提供最多的信息,准确显示您获得的更新。

在 Fedora Workstation 上,您可以通过以下方式安装更新:

 sudo dnf upgrade

但是,这在 Fedora Silverblue 中不起作用。相反,您将需要使用以下命令:

 rpm-ostree upgrade

请注意,在 Silverblue 中,该命令不需要sudo或管理员访问权限。在 Silverblue 上,您无需提升权限即可升级系统或安装软件。

升级完成后,终端会显示新系统映像中升级包的完整列表,以及您可以运行的命令以重新启动系统,您需要在任何下载的更新生效之前执行此操作。

如何在 Silverblue 上安装应用程序

在第一次发布时,GNOME 软件似乎比平时少。那是因为 Fedora Silverblue 并未在通常的 Fedora 存储库中提供作为 RPM 可用的所有应用程序。 Silverblue 使用单独的 Flatpak 应用程序的 Fedora 存储库,称为Fedora Container Registry 。可以使用各种 GNOME 应用程序、游戏和一些关键的生产力应用程序(如 LibreOffice),但还有很多不足之处。

要获得更多软件,您需要前往Flathub并按照非常简单的设置说明进行操作。这将极大地扩展 GNOME 软件中可用的应用程序。

要从终端安装应用程序,您只需使用flatpak install命令。与 DNF 不同,您不需要知道包的确切名称。如果答案不清楚,Flatpak 通常会猜测您正在寻找什么或向您提供选项。

如果您想要的程序不能作为 Flatpak 使用,您仍然可以选择安装 RPM,但这就是事情变得棘手的地方。

对于您打算经常使用的应用程序,您可能希望使用rpm-ostree install命令将它们附加到您的系统映像中。使用您要安装的 DNF 包的确切名称执行此命令。之后您需要重新启动计算机。从那时起,您的系统映像将在升级期间包含这些应用程序。要删除软件,包括 Firefox 等预装应用程序,请使用rpm-ostree override remove命令。

另一种方法是从命令行启动应用程序。这些应用程序不会出现在您的应用程序抽屉中,它们的图标也不会出现在您的 Dock 中。要走这条路,您需要熟悉 Toolbox。

在终端工作

Fedora Silverblue 带有一个终端,您遇到的大多数命令仍然有效。但是,如果您想添加或删除包,则需要使用名为Toolbox的工具。

Toolbox 创建容器或隔离的工作区,您可以在其中安装所需的所有包,而不会弄乱您的系统。

要创建工具箱,请使用:

 toolbox create

然后输入:

 toolbox enter

现在您可以使用 DNF 并安装您想要的任何 Fedora 软件包。完成后,键入exit退出工具箱。

请注意,Toolbox 容器在安全意义上不是隔离的。每个人都可以访问您的主目录和计算机的其他方面。不要将它们视为干扰粗略软件的安全方式。

管理应用程序权限

Flatpak 格式确实带有一些针对粗略或受损软件的保护。虽然您可以在打开系统设置并导航到应用程序时看到其中的一些内容,但要真正控制您需要安装一个名为Flatseal的程序。

例如,使用 Flatseal,您可以阻止应用程序访问网络或限制它们仅查看硬盘驱动器上特定文件夹中的文件。该程序可用于任何 Linux 发行版,但由于 Fedora Silverblue 全力支持 Flatpak,这意味着您可以对系统上的大多数应用程序进行这种级别的控制。

Fedora Silverblue 准备好迎接黄金时段了吗?

是的,已经有一群人使用 Fedora Silverblue 作为他们的主要发行版。应用程序是稳定的,而且在大多数情况下,它看起来就像普通的 Fedora Linux。一旦您了解了 Silverblue 的怪癖,您实际上甚至可能会发现它比传统的 Linux 发行版更易于使用。

Fedora Silverblue 并不孤单。如果您发现这个概念令人兴奋,请知道还有一些其他 Linux 发行版也将 Flatpak 用于所有应用程序。更多可能正在进行中。