- YaST 正在逐步淘汰,其功能正在 Agama、Cockpit 和 Myrlyn 之间进行划分,以实现 openSUSE 和 SUSE 管理的现代化。
- openSUSE Leap 16 首次推出了 Agama 作为安装程序、Cockpit 用于系统管理,以及 Myrlyn 作为基于 libzypp 的全新图形化软件包管理器。
- Myrlyn 1.0 几乎具备 YaST 软件模块的所有功能,并且在此基础上进行了扩展,而 Tumbleweed 和 Slowroll 仍然以 YaST 为核心工具。
- 过渡过程将漫长而谨慎:YaST 将继续在某些分支中存在,而新工具将在 SUSE 生态系统中巩固为标准。
SUSE 和 openSUSE 生态系统正经历着近年来最大的变革之一:YaST 作为系统安装和管理的核心组件正逐步退出市场,取而代之的是 Agama、Cockpit 和 Myrlyn 这三款即将取代它的组件。对于多年来一直使用 openSUSE 的用户来说,这听起来或许近乎亵渎,但此举有着非常明确的技术和战略基础。
这次变革并非简单的界面升级,而是对基于 SUSE Linux 的系统安装、配置和维护方式的一次深刻重构,无论是在社区领域(openSUSE Leap 和 Tumbleweed)还是企业领域(SUSE Linux Enterprise)。其结果是,YaST 与其后继者——安装程序 Agama、管理中心 Cockpit 和新的图形化软件包管理器 Myrlyn——共同存在,有时甚至关系紧张。
从 YaST 到新的管理模式
几十年来,YaST 一直是 SUSE 的标志性产品:它是一款功能强大、高度集成的一体化工具,集中管理系统安装、软件管理以及众多高级网络、硬件、安全和服务配置。您可以通过同一个界面设置 FTP 服务器、加入 Active Directory 域、调整全局代理或管理打印机。
这种多功能性也带来了巨大的代价:大量的遗留代码、过时的依赖项以及日益复杂的维护工作。随着时间的推移,它的许多功能与更现代的桌面工具(如 KDE Plasma、GNOME 等)或更轻量级的控制台实用程序重叠,使得 YaST 这个“庞然大物”的长期维护变得难以为继。
因此,SUSE 管理层决定将 YaST 的历史功能拆分为几个采用现有技术构建的专用组件:Agama 用于系统安装,Cockpit 用于安装后管理,Myrlyn 则是一个基于 libzypp 的图形化软件包管理界面。此举旨在更多地依赖行业标准,减少对单一发行版专有工具的依赖。
这种分离也更符合不可变系统、云部署和通过浏览器进行远程管理的新趋势,在这些领域,像 YaST 这样的单体工具不如一组可通过 Web 访问的模块化服务和前端适用。
问题在于,淘汰像 YaST 这样集成度极高的资深软件并不是两个版本的问题,这也解释了为什么今天,根据我们谈论的是 Leap、Tumbleweed 还是 SUSE Linux Enterprise,仍然存在着截然不同的世界。
openSUSE Leap 16:转折点
openSUSE Leap 16 标志着这一转变的转折点。这是 Leap 的第一个版本,其中 YaST 真正不再作为核心工具使用,而 Agama、Cockpit 和 Myrlyn 这三个新工具成为已安装系统管理的核心。
Leap 16.0 直接基于 SUSE Linux Enterprise Server 16,并集成了全新的 SUSE Linux Framework One (SLFO,ALP 项目的后续版本)。它保留了经典的基于软件包的分发模式,但采用了现代化的技术基础,并拥有更长的发布周期,显然是为生产环境而设计的。
用户最直观的改变之一是全新的 Agama 安装程序,它取代了传统的 YaST 安装程序。Agama 将用户界面与内部安装逻辑完全分离,甚至可以通过远程 Web 界面来协调安装,这非常适合自动化部署和专业环境。
在桌面方面,Leap 16 完全拥抱 Wayland:安装过程中,主要环境(GNOME、KDE Plasma 等)仅提供 Wayland 会话,Xorg 则被边缘化。对 SysV init 脚本的支持也被彻底放弃,仅采用 systemd 作为初始化系统。
另一个重要但合乎逻辑的变化是架构上的飞跃:Leap 16.0 不再支持 x86_64-v1 架构,需要兼容 x86_64-v2 架构,这实际上意味着需要相对较新的处理器(例如,从 Nehalem 架构开始的 Intel 处理器)。其目标是优化性能并更好地利用现有硬件的性能。
Agama:新系统安装程序
Agama 是经典 YaST 安装程序的继任者,它采用了更加模块化和云友好的设计理念。Agama 使用现代技术(包括 Rust)编写,并依赖于一个 API,该 API 允许针对不同的产品和场景定制安装体验。
就用户体验而言,Agama 对于 YaST 的用户来说非常熟悉:它保留了熟悉的安装流程,包括语言选择、分区、软件模式选择(桌面、服务器堆栈等)以及用户创建。关于稳定性和性能,大多数报告都认为它在这方面已经达到了 YaST 的水平。
Agama 与老牌安装程序 YaST 相比,其不足之处在于缺少 YaST 在安装过程中提供的“额外”功能。例如,Agama 允许您选择完整的软件模式,但它无法逐个筛选软件包,也无法让您以同样的精细程度启用或禁用服务。这些高级选项目前尚不可用。
这并不意味着 Agama 的功能有限,而是说它专注于核心功能:安装一个包含预期组件的稳定系统,并将其他管理工作委托给 Cockpit 或软件包管理器等后续管理工具。目前尚不清楚它最终是否会继承 YaST 的一些更精细的功能,但就目前而言,它已经完全满足了自身的需求。
在自动化部署环境中,Agama 为旧安装程序无法实现的场景打开了大门,因为它的 Web 界面和 API 与编排器、配置工具和模型非常契合,在这些模型中,安装程序是远程“控制”的,而不是从服务器屏幕控制的。
Myrlyn:YaST 软件模块的后续版本
Myrlyn 1.0 是 openSUSE 新图形化软件包管理器的第一个稳定版本,旨在直接替代 YaST 软件模块,但本身并不依赖于 YaST 基础架构。
Myrlyn由 YaST 背后的大人物之一 Stefan Hundhammer 开发,最初诞生于 SUSE Hack Week 期间,其目标非常明确:将 Qt 包选择器从 YaST 中分离出来,并将其变成一个基于 libzypp(SUSE 和 openSUSE 的包管理后端)的独立 Qt 应用程序。
从功能上看,Myrlyn 是 YaST 软件管理器的升级版:它允许您安装、更新和删除单个或多个软件包,处理软件模式(软件包组),并集中管理软件仓库。所有这些操作都在单个应用程序中完成,无需单独的软件仓库和软件包模块。
该界面采用 Qt6 构建,保留了“老式”软件包管理器的经典风格,包含软件包列表、筛选器、详情面板以及显示即将应用更改的区域。它还包含一个迷人的向导图标,让人想起这些前端界面曾经是 Linux 体验核心的时代。
与 YaST Software 相比,Myrlyn 的主要区别在于它不依赖于整个 YaST 生态系统;相反,它作为 libzypp 的一个轻量级前端。实际上,它可以像普通用户一样以只读模式运行,也可以在必要时提升权限以对系统进行实际更改。
Myrlyn 的功能:不仅仅是一个软件包管理器
从第一个测试版到 Myrlyn 1.0,它提供的功能列表已经大大扩展,以至于如今它对于那些喜欢通过精细控制来管理软件的人来说,是一个非常可靠和实用的选择。
关于软件包,Myrlyn 已经实现了 YaST Software 提供的所有功能:按名称、描述或其他字段搜索;查看详细信息(版本、来源、依赖项、技术数据);选择要安装、更新或删除的内容;如果多个软件包版本在不同的存储库中可用,则可以选择特定版本;以及方便地使用软件模式来安装或删除整个软件包组。
它还以集成的方式管理补丁和更新,因此您可以查看哪些补丁待处理,按存储库、类型或重要性进行筛选,并决定应用哪些补丁。这使其成为桌面系统和承担更繁重任务但仍通过图形界面管理的机器的实用工具。
Myrlyn 相较于旧版 YaST 模块真正的优势在于其仓库体验。它从一开始就能自动更新仓库元数据,提供仓库活动(下载、刷新等)的可视化反馈,并清晰地展示每个仓库的信息:名称、优先级、状态(启用或禁用)、自动更新、关联服务和 URL。
通过同一界面,您可以更改优先级、启用或禁用软件仓库、修改是否自动更新,以及即时编辑名称和 URL。它还会显示包含和不包含 libzypp 变量(例如 $releasever、$arch 或 $basearch)的 URL,这有助于您准确了解软件包的来源。
另一个有趣的功能是管理知名的社区存储库:从 Myrlyn,只需点击几下即可添加 Packman、NVIDIA 驱动程序、OpenH.264 或 LibDvdCss 等常见存储库,并根据发行版版本(Leap 15.x、Leap 16.x、Tumbleweed、Slowroll、SLE-15 SPx 等)自动选择正确的 URL。
最后,Myrlyn 为没有 root 权限的用户提供了一个非常实用的只读模式,使他们能够在不破坏任何系统的情况下浏览软件仓库和软件包。YaST Software 甚至都没有提供此选项,对于那些只想在请求管理员进行更改之前查看已安装或可用软件包的用户来说,这非常有用。
Myrlyn 与其他软件管理工具的比较
如今的桌面环境中,许多用户很少使用传统的软件包管理器,因为 GNOME 软件中心、KDE Discover 等工具足以满足常用应用程序的安装、更新和管理需求。此外,Flatpak 等通用格式也获得了广泛的认可。
然而,像 Myrlyn 或更早的 YaST Software 这样的工具,对于那些需要更精细地控制软件仓库、版本和依赖项的用户,或者那些“美观”的应用商店无法满足需求的用户来说,仍然有着非常明确的市场定位。从这个意义上讲,Myrlyn 在 Debian/Ubuntu 世界中的地位与 Synaptic 不相上下。
Myrlyn 的一个常见批评点在于其权限模型:它坚持只读模式和完全模式的分离,而不是像许多现有的数据库管理系统那样,仅在需要执行关键操作时才请求权限。这并非致命缺陷,但被认为有些过时。
从视觉上看,它与 YaST Software 的差异并不像某些人声称的那样显著。两者都使用 Qt,而且可读性和外观更多地取决于为用户帐户或 root 用户配置的主题,而不是应用程序本身。对许多人来说,改进之处更多地在于架构的优化,而不是彻底的界面重新设计。
关于后端,值得注意的是,Myrlyn 不仅仅是 zypper 的图形用户界面,而是 libzypp 的接口,正如 zypper 是 libzypp 的命令行版本一样。这使得它能够提供与 openSUSE 用户熟悉的 zypper 一致的依赖项解析和行为体验。
所有这些都使得 Myrlyn 对高级桌面用户和管理员特别有吸引力,他们想要一个强大的图形工具,但又不想依赖整个 YaST 框架,而且他们需要的不仅仅是一个简化的“软件中心”。
驾驶舱:新的系统管理套件
YaST 的另一位主要替代者是 Cockpit,这是一个 Web 管理界面,已在商业领域使用了多年,并已成为许多面向服务器的发行版的实际标准。
在 SUSE 生态系统中,Cockpit 的出现填补了 YaST 管理部分留下的巨大空白:用户管理、服务、存储、网络、更新、容器等等,都可以通过浏览器访问,并且可以通过插件以模块化的方式进行访问。
与 Myrlyn 不同,Cockpit 并非在所有环境中都默认安装,尤其是在桌面系统上,因为它的许多功能与图形环境本身的工具(例如用户管理、磁盘等)重叠。然而,对于服务器和远程部署而言,它却是一个关键组件。
需要强调的是,Cockpit 并不能完全替代 YaST 的所有功能。有些特定的设置、模块和任务没有直接对应的替代方案,在某些情况下,这些功能需要通过第三方工具或终端来实现。鉴于目前云和容器技术的普及,SUSE 选择专注于最实用和最常用的功能,而不是完全复制 YaST 的所有历史功能。
Cockpit 在 SUSE 战略中的价值在于提供统一和现代化的管理,更符合当今数据中心、混合部署和企业环境的期望,而无需像 YaST 那样将所有内容都绑定到单个本地图形程序。
SUSE Linux Enterprise 和即将进行的过渡
SUSE Linux Enterprise Server 16 在 openSUSE Leap 16 发布后不久便面世,但最初仅提供服务器版本。关于独立的 SUSE Linux Enterprise Desktop 16 版本知之甚少;虽然可以在服务器端安装图形界面,但独立产品是否会推出仍是未知数。
在企业领域,Myrlyn 的存在感更加低调:目前,它还没有完全集成到 SUSE Linux Enterprise 中,这清楚地表明 openSUSE 在对 SLE 采取最终行动之前,正在充当试验场。
与此同时,在 SUSE 15 中,YaST 的生命周期仍在继续,并且已全面投入运行。Leap 16 中目前正在完善的许多替代方案很可能不会最终部署到该分支的生产环境中。这是一种奇特的共存现象:老牌的 YaST 将继续存在于一些系统中,而这些系统的寿命甚至会超过一些旨在取代它的解决方案。
该策略似乎很明确:在 openSUSE 中稳定 Agama、Cockpit 和 Myrlyn,特别关注 Leap 这个“严肃的”但基于社区的变体,然后以尽可能小的风险将该模型引入 SUSE Linux Enterprise 16 及后续版本。
然而,社区内部的争论尚未结束。一些用户和管理员怀念过去那种只需点击一下鼠标就能通过 YaST 完成所有操作的时代,他们认为新模式更加碎片化。而另一些人则恰恰相反:他们更看重减少对单一“控制中心”的依赖,以及更多可互换的、基于标准的组件。
风滚草与慢速滚动:YaST 拒绝离开的地方
如果说有一种情况能体现这种转变的显著性,那就是 openSUSE Tumbleweed,这个滚动发布版本近年来发展最为迅速,并且引领了后来出现在 Leap 和 SLE 中的技术。
尽管 Tumbleweed 秉持持续更新和采用前沿技术的理念,但它仍然使用 YaST 进行安装和管理,而且短期内似乎没有改变的迹象。就连 Leap 和 Tumbleweed 之间的过渡分支 Slowroll 也仍然将 YaST 作为其核心组件。
社区内部对于这种相对的惯性存在着相互矛盾的意见:一些声音倾向于继续使用 YaST,“直到它崩溃为止”,而另一些人则认为,既然技术上可行的替代方案已经存在,那么让它成为障碍将是一个错误。
有趣的是,Tumbleweed 的存储库中已经包含了 Myrlyn 1.0,以及 YaST2(与命令行关联的图形层)的几个更新,这清楚地表明,后者的持续性在相当长的一段时间内是有保障的。
与此同时,“旧版”YaST几乎没有任何相关的变化,但这似乎并没有引起任何人的担忧:它作为安装程序和一组管理模块仍然运行良好,只要这种情况继续下去,就没有特别急于将其从滚动版本中移除。
实际上,这意味着 Myrlyn 随时准备在决定替换 YaST Software 的地方替换它,事实上,Myrlyn 已经在 Leap 16 中承担了这一角色,但 Tumbleweed 和 Slowroll 的最终升级正在非常谨慎地进行。
鉴于此,openSUSE 和 SUSE 的未来管理方向显然指向 Agama、Cockpit 和 Myrlyn,尽管 YaST 的彻底淘汰将是一个漫长的分阶段过程,期间会有多个版本共存。对于最终用户而言,信息很明确:旧版 YaST 正在逐步被淘汰,但它的遗产将以更现代、更专业的工具的形式继续存在。
对于刚接触 SUSE 生态系统的人来说,这三款新组件可能看起来很普通,但那些见证了 YaST 成长的人会注意到其理念的变化:不再是单一的“瑞士军刀”,而是更多专业化的组件,它们协同工作,始终保持着相同的目标:使 openSUSE 和 SUSE 的管理变得强大、灵活,并且尽可能方便。
对字节世界和一般技术充满热情的作家。我喜欢通过写作分享我的知识,这就是我在这个博客中要做的,向您展示有关小工具、软件、硬件、技术趋势等的所有最有趣的事情。我的目标是帮助您以简单而有趣的方式畅游数字世界。