查看原文
其他

红帽对 RHEL 下游造成毁灭性打击!停止公开企业版源代码,要挤占开源份额实现盈利?

InfoQ 2023-07-25

整理 | 核子可乐、褚杏娟

当地时间 6 月 21 日,红帽发布公告称,停止向第三方提供 RHEL 源代码,CentOS Stream 将成为公共 RHEL 相关源代码发布的唯一仓库。红帽的客户和合作伙伴可以付费获得源代码,但无权二次发布这些代码。

“在 CentOS Stream 之前,Red Hat 将 RHEL 的公共资源推送到 git.centos.org 上。当 CentOS 项目转移到 CentOS Stream 上时,即使 CentOS Linux 不再是 RHEL 的下游构建,我们仍然维护这些存储库。CentOS Stream 的参与、投资的工程水平以及我们为客户和合作伙伴解决问题的新优先级,使得现在维护独立、冗余、存储库的效率低下。”红帽核心平台副总裁 Mike McGrath 在公告中表示。

红帽的这一决定将影响 Red Hat Enterprise Linux(RHEL)的所有重建和分支,(例如 AlmaLinux、Rocky Linux、EuroLinux 和 Oracle Unbreakable Linux),这些项目都依赖已发布的源代码。在无法访问所使用的源代码的情况下,保持与现有版本的 1:1 二进制兼容性会是很大的挑战。

目前,各种线上论坛的下游发行版用户正在强烈抗议,气势不输几年前红帽宣布取消 CentOS Linux 之时,最常见的字眼包括“背信弃义”、“违反 GPL”等等。“红帽做的事情很糟糕,但微软、IBM 和在后台运作的公司之间一直存在着一场更大的战斗。这是一个丑陋的局面,自由软件和开源被夹在中间。”有网友说道。

为了 Stream?

2020 年底,红帽宣布停更 CentOS 8 后,CentOS Stream 成了 CentOS 的替代品。在 Linux 生态中,一般认为 Fedora 是中上游,CentOS Stream 是中游,RHEL 是下游。

RHEL 是基于 Fedora 某个特定版本拉取分支,逐渐在这个版本上做增强,保证新旧版本之间的兼容性,并保证最终版本的稳定性。CentOS Stream 则与 RHEL 的版本相对应,其 Git 提交记录完全一致,二者通过同样的构建流程、同样的测试用例。但 CentOS Stream 永远只对应 RHEL 最新的稳定版。只有通过全部的测试用例,CentOS Stream 新版本才会发布,这些测试用例与 RHEL 可能重合,也可能不重合。

红帽决定停止向公众提供 RHEL 源代码,这个变化的区别在于:CentOS Stream 又是 RHEL 的上游,又代表着 RHEL 下个版本的发展方向。从这个角度看,红帽相当于把公布 RHEL 源代码调整为滚动发布 RHEL 的 beta 版代码。

而 Alma、Rocky 以及之前的 CentOS Linux 都属于 RHEL 的下游:使用同样的源代码重构而成以保证完美兼容。原本的业务基础,就是无需向红帽支付任何费用即可进行重构,使用相同的驱动程序并实现与 RHEL 应用程序间的完美兼容。

但单纯开放 CentOS Stream 显然做不到这一点:它只是 RHEL 的未来预览版。如果企业希望在 RHEL 上开发产品或驱动程序,又或者想要提前把握 RHEL 的后续发展方向,那 CentOS Stream 倒是基本够用。但如果只想免费运行 RHEL,则开放 CentOS Stream 可以说意义不大,更遑论构建自己的 RHEL 变体了。

有媒体怀疑,红帽很清楚 RHEL 社区的用户其实并不关注 Stream,这也正是此次调整想要达到的效果。

Fedora 会不会受到影响?

Fedora 的用户和贡献者们倒是不必担心,但 Fedora-Devel 邮件列表中也透露出了严重的不满情绪。

Fedora 位于 RHEL 的上游:在 Fedora 中开发和测试的软件会先流入 CentOS Stream,之后再进驻 RHEL。实际上,Fedora 的大部分工作都是由 RHEL 完成的。如果说 CentOS Stream 就是 RHEL 的滚动 beta 版,那么 Fedora 就是 RHEL 的滚动 alpha 版。所以是 RHEL 在技术上依赖于 Fedora,而非 Fedora 依赖于 RHEL。原则上,Fedora 仅仅是在经济层面倚仗 RHEL 的支持。

Fedora 还提供服务器版本,需要免费 RHEL 的红帽用户可以随意使用这些版本。最大的区别就是,Fedora 始终基于较新的代码,所以与当前 RHEL 永远不会完全兼容。另外,Fedora 也不提供稳定的长期支持版本。

下游发行商:
乐观但不掩担忧

目前,Alma Linux 和 Rocky Linux 的官方反应都表示谨慎乐观。

“虽然这个决定确实改变了我们用于构建 Rocky Linux 的自动化,但我们已经创建了一个短期的缓解措施,并正在制定长期的策略。对于任何不稳定的 Linux 用户、合作者或合作伙伴来说,不会有任何干扰或改变。”Rocky Linux 官方表示。

“我相信开源应该始终免费且完全稳定。它不应该隐藏在付费专区后面,也不应该由一家公司控制。”Rocky Linux 项目的创始人、该项目的主办方 Rocky Enterprise Software Foundation 董事会主席 Gregory Kurtzer 表示。

Alma Linux 官方则表示,“短期内,我们将与 RHEL 生态系统的其他成员合作,确保我们继续以众所周知的速度和稳定性提供安全更新。从长远来看,我们将与这些合作伙伴以及我们的社区合作,确保 AlmaLinux 作为企业 Linux 生态系统一部分的最佳前进道路。”

AlmaLinux 用户仍然可以获得该操作系统服务器的安全更新。短期内, AlmaLinux 计划停止 CentOS Stream 更新和 Oracle Linux 更新,以确保继续发布安全补丁。这些更新将经过精心策划,以确保它们与 RHEL 1:1 兼容,同时不违反红帽的许可,并将像所有其他版本一样进行审查和测试。

但是, AlmaLinux 的论坛帖子则弥漫着担忧的情绪:“这对整个红帽生态系统造成破坏。”AlmaLinux 表示,在 AlmaLinux 操作系统的整个生命周期中,其与红帽建立了令人难以置信的合作关系,他们希望这种关系可以继续下去。

“我们并不惊慌,因为我们使用 AlmaLinux,而且你们从多年前就开始认真对待你们的产品(Cloud Linux)。我不怕。”在 AlmaLinux 安抚社区的推文下有支持者如是说道。

早在 2011 年,红帽就调整过源代码包的分发方式,看起来就是专门给重构工作“挖坑”。但当时的举措并不成功,实际上只导致越来越多企业开始拥抱 CentOS。

有媒体在 CentOS Stream 9 发布时就曾断言,红帽犯下的最大错误就是力推 CentOS Linux。此举相当于支持了跟自家付费商业产品竞争的免费方案,属于典型的“资敌”行为。这项计划不仅没能给甲骨文带来多大阻力,反而显著削减了 RHEL 的销售额。

当时,下游发行商也找到了绕过限制的方法,而且规避的思路并不复杂。红帽恐怕也对新生代重构厂商的崛起感到了不安。

虽然 Rocky 和 Alma Linux 背后的机构都属于非营利组织(Rocky 来自由 Greg Kurtzer 创立并运营的公益企业),但有一说一,这两家的表现确实不错。就在上周,NASA 授权在内部使用 Rocky Linux;CERN 和 Fermilab 等科研机构则选择使用 Alma Linux。

红帽倒是认为这些并不是什么大事,似乎都是在为自己的 Stream 市场普及率做贡献。但从实际效果来看,红帽在 CentOS Linux 被取消之后,一刻也没有放松对蓬勃发展的重构生态发起攻击。

难以获得源代码

目前开源之门还没有彻底关闭。预计每当有新的主要版本即将发布时,Stream 都会定期与 RHEL 对齐同步。就是说当 RHEL 11.0 发布时,Stream 将暂时与其保持同步,而下游发行版也能在相应的时间点获取代码副本,并构建起与 RHEL 大版本相兼容的产品。但目前下游生态面临的最大挑战是在各个主要版本之间,他们再无法获得源代码层面的小规模迭代和更新。

有评论人士指出,用户可以注册免费红帽开发者账户,借此合法获取源代码。说得没错,但问题是大家需要签名同意才能获取账户,而许可协议中明确禁止对软件的重新分发。所以,哪怕下游发行版仍能获得软件源代码,实际上也无法拿来使用。虽然原则上可以做出实质性修改,再把修改后的结果共享出去,但 RHEL 兼容发行版能够存在的核心意义,就是避免大幅变更、保留“完美兼容性”。

当然,下游发行商也可以选择“挨骂也要搞”的态度,硬着头皮继续推出自己的版本。而红帽一旦发现,至少也会立即封禁其订阅权限和账户。这必然掀起一场“猫鼠游戏”:下游发行商不断开设新的免费开发者账户,而红帽则通过跟踪和封禁违规者账户的方式予以还击。这显然不是什么可以长期持续的发展模式。至于最差的结果,发行商甚至可能面临起诉并就此消失。

总而言之,获取源代码的途径并不能说没有,只是大部分受到非常严格地限制和管控。

遏制社区发展,
转为企业利润?

虽然社区反映强烈,但单从事件本身分析,红帽的行为其实完全符合 GPL 条款,毕竟条款只要求向使用所构建二进制文件的群体提供源代码:换句话说,向付费客户群体提供源代码。关键在于要获取这些二进制文件,客户及免费账户的开发人员必须同意许可协议并遵守合同条款,而合同条款的优先级要高于代码所遵循的 GPL 许可证。

从某种程度来讲,此举可以说是红帽公司 2014 年将 CentOS 收归专有这条逻辑线的延续。此项举措将收窄合法空间,仅留 CentOS Stream 一根“独苗”,其余重构项目将基本没有发展的可能。当然甲骨文除外,其拥有雄厚的资金继续支撑 Oracle Linux,同时也能提供更便宜的企业支持合同、增强的 Btrfs 兼容内核等。

外媒评价道,红帽的这一套组合拳已经打得相当熟练,在逐步干掉大部分克隆产品之后,他们应该会故伎重施、取消自家旗舰产品的官方免费版本。作为配合,红帽会提供免费 beta 版本,并在发布公告上大谈“这是为了鼓励社区参与”等看似积极的话语。但事实上,红帽真正想打击的其实是那波所谓“贪图便宜”的家伙。毕竟开发人员仍可以免费使用 RHEL 进行生产部署,只是最多仅可支持 16 台设备。

如果此举最终导致 Alma 和 Rocky 等下游生态投入数年建立的企业和社区走向消亡,那么相应的市场空间可能会转化为 IBM 的利润,但也意味着公众舆论将对蓝色巨人猛烈开炮。

自 30 年前成立以来,红帽就一直允许下游生态对其操作系统进行克隆和重构,就连早期 Red Hat Linux 也不例外。例如,Mandrake Linux 就是由此起步,向 Red Hat Linux 引入了 KDE 桌面。当时红帽以违反 Qt 许可证为由,一举消灭了这股社区力量。除了 IBM 的股东,其他各方显然都不会认可这样的粗暴行径。

参考链接

https://www.redhat.com/en/blog/furthering-evolution-centos-stream

https://www.theregister.com/2023/06/23/red_hat_centos_move/

https://www.infoq.cn/article/NGt234WtjgPOwITMlXWo

今日好文推荐

AI之下没有秘密:网友诱骗ChatGPT激活 Windows 11,ChatGPT落入陷阱!

扎克伯格和马斯克线上约架;马云:接下来是淘宝的机会;谷歌新广告嘲笑 iPhone 过时 | Q资讯

52家企业,48家要降本:FinOps 能否拯救“下云潮”

前端容易出神话?从高中辍学到价值 10 亿美元的初创公司

活动预告

释放生态引力,共谋产业新增长。由中国信息通信研究院、中国通信标准化协会指导,中国通信标准化协会大数据技术标准推进委员会主办的“2023 可信数据库发展大会”将于 7 月 4-5 日在国际会议中心隆重召开。本届大会以”自主 创新 引领”为主题,百余位行业协会领导、数据库学术大咖、产业链各环节数据库负责人、资深技术专家将亲临现场共同论道数据库


读者福利

👆 添加小助手,领取 ChatGPT 研习课程 👆 

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存