
2023年6月21日,红帽在官网博客上发了一篇公告,引发了很多讨论。
比如:红帽对 RHEL 下游造成毁灭性打击!停止公开企业版源代码,要挤占开源份额实现盈利?
咳咳,至于这么恐慌吗?
本文就是说说这个事。
红帽的公告
公告里面最重要的一句话是:“CentOS Stream将成为RHEL相关源代码公开发布的唯一代码库。对于红帽的客户和合作伙伴,源代码仍将通过红帽的客户门户网站提供。”
原文是:CentOS Stream will now be the sole repository for public RHEL-related source code releases. For Red Hat customers and partners, source code will remain available via the Red Hat Customer Portal.1
也就是说,公开渠道不再提供RHEL的源码,只能获取CentOS Stream的源码,而RHEL的客户和合作伙伴,仍然可以通过专门途径获取到源代码。
有人会问,Red Hat、CentOS Stream、RHEL,还有以前常说的CentOS,这都是什么?以及是什么关系?
Red Hat
(红帽)是一个公司,RHEL
(Red Hat Enterprise Linux)是红帽的企业版Linux操作系统产品,订阅客户(即企业版的付费客户)可以享受订阅服务(即维保服务),也即可以从官方获得补丁、更新、升级,从官方获得专家技术支持以及培训等资源。
CentOS
(Community Enterprise Operating System)是红帽的社区版Linux,免费的。当然,不花钱就没有专门的服务,技术支持主要是通过社区的方法来解决。但是,这么个可以捡便宜的好东西,在2020年12月以后,不再提供后续版本了。
从上下游关系上看,Fedora是上游,里面有操作系统最具创新的内容,其中比较成熟和稳定的内容进入RHEL,最后再进入CentOS:
所谓上下游,就是一些新功能新特性先在上游做,做得差不多了,比较稳定了,就可以输出到下游发布和进一步发展了。
Fedora
是一个开源社区,专门研发Fedora Linux操作系统,红帽对其进行赞助,所有最具创新性的想法都在Fedora里面先行试验。
CentOS社区使用RHEL的源码,把Red Hat有关的商标都去掉,重新编译,就产生了CentOS Linux,可以说CentOS和RHEL是100%兼容的。CentOS始创于2002年,本来是一个独立的社区,2014年加入了红帽2。
每当RHEL更新后,CentOS就会根据RHEL的更新,重新编译后跟着发布,正如克隆一样。没钱的老百姓用着这不花钱的CentOS也确实挺开心,虽然没服务,可咱穷人什么时候买过服务啊,能用就行。
然而,突然有一天(2020年12月8日),红帽宣布CentOS Linux项目停止,CentOS 8成为最后一个版本,不会再有CentOS 9。
同时,红帽推出了CentOS Stream
项目,而且定性为RHEL的上游。
CentOS的创始人Gregory Kurtzer(他2005年就离开了CentOS)闻讯大怒,毅然创建了Rocky Linux项目,以继承CentOS的原始目标。
于是,上下游关系变为:
现在,老百姓就不敢随便用CentOS Stream上生产了,因为它不再是RHEL的下游,而是变成了RHEL的上游。也即最新的东西先在CentOS Stream中出现,然后才会进入RHEL(记住这句话,后面用得上)。
更为不便的是,CentOS Stream是滚动发布的,整个发行版始终保持所有内容的不断更新(每次更新都会包含最新的软件包和组件),而不像RHEL那样定期发布大版本和小版本,所以,大多数用户不敢直接拿CentOS Stream干正事,它连个固定的版本号都没有,谁知道里面有多少坑呢。
OSD1:The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale.
原文是:This change means that we, as builders of a RHEL clone, will now be responsible for following the licensing and agreements that are in place around Red Hat’s interfaces, in addition to following the licenses included in the software sources. Unfortunately the way we understand it today, Red Hat’s user interface agreements indicate that re-publishing sources acquired through the customer portal would be a violation of those agreements.
许可证授予。在遵守以下条款的前提下,Red Hat 公司( Red Hat)根据 GNU 通用公共许可证第2版 (https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) 授予你永久的、全球性的程序许可(每个程序可能包括多个软件组件)。除了下面第2节中描述的特定图像文件(笔者注:指商标文件)外,每个软件组件都受其许可证(位于该软件源码中)管辖,该许可证允许您运行、复制、修改和重新发布(在某些情况下需遵守某些义务)该软件组件。
1.License Grant. Subject to the following terms, Red Hat, Inc. (“Red Hat”) grants to you a perpetual, worldwide license to the Programs (each of which may include multiple software components) pursuant to the GNU General Public License v.2 (https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html). With the exception of certain image files identified in Section 2 below, each software component is governed by a license located in the software component’s source code that permits you to run, copy, modify, and redistribute (subject to certain obligations in some cases) the software component.
另:有朋友提示我,客户从门户拿到的源码,可能并不是很利于构建克隆的形式,如果是这样,从CentOS Stream构建克隆可能还更方便一些。
在公告里面,红帽是这么说的:
“以前,在还没有转向CentOS Stream的时候,我们把RHEL的代码公开在git.centos.org(为的是让CentOS Linux用),后来CentOS Linux项目中止了,不再是RHEL的下游了,我们仍然开放着RHEL。但是,出于对CentOS Stream的参与度、项目的投资程度、以及我们对客户和合作伙伴的事项优先级的考虑,我们(在CentOS Stream之外)继续维护RHEL源码库,就显得有些多余和低效能了。最新的源码仍将通过CentOS Stream提供。”
原文是:Before CentOS Stream, Red Hat pushed public sources for RHEL to git.centos.org. When the CentOS Project shifted to center on CentOS Stream, we maintained these repositories even though CentOS Linux was no longer being built downstream of RHEL. The engagement around CentOS Stream, the engineering levels of investment, and the new priorities we’re addressing for customers and partners now make maintaining separate, redundant, repositories inefficient. The latest source code will still be available via CentOS Stream.
我从里面推测红帽的大致意思是:
“反正我都不搞下游了,还公开RHEL源码干什么呢。”
“至于是不是方便你们克隆我的RHEL,我觉得不重要,重要的是大家一起把CentOS Stream搞好,你们想做下游,就做CentOS Stream的下游呗。”
“欢迎你们做RHEL的竞品,而不是再克隆RHEL,那多没意思啊!”
上面那段最后一句是“最新的源码仍将通过CentOS Stream提供”,一开始差点没看懂,什么?RHEL的最新源码仍将提供?后来我回过味来了:
RHEL的最新源码,当然一开始都会在CentOS Stream里面。
毕竟CentOS Stream是上游嘛,只不过这些“最新源码”,什么时候进入RHEL的发行版,就不清楚了。
参考资料:
https://www.redhat.com/en/blog/furthering-evolution-centos-stream
https://lists.centos.org/pipermail/centos-announce/2014-January/020100.html
https://almalinux.org/blog/impact-of-rhel-changes/
https://www.redhat.com/en/about/eulas
https://www.redhat.com/en/about/appendices
转载自丨卫sir说
编辑丨王梦玉
相关阅读 | Related Reading
中国开源发展所面临的几个问题和挑战
云原生活动预告|Harbor & Narrows & Velero开源项目技术沙龙报名开启!

本文分享自微信公众号 - 开源社KAIYUANSHE(kaiyuanshe)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。