连锁反应开始了!Linux 发行版迎新变化!

任何企业都有合法权利捍卫其模型和产品。撇开大量不真正了解开源许可证如何工作的人不谈,我们的印象是,有很多人觉得仅仅因为这是Linux,他们就有某种权利免费获得它。但事实上,他们没有。这不是自由软件中的“自由”的意思,而且从来都不是。

整理丨诺亚
连锁反应开始了!Linux 发行版迎新变化!连锁反应开始了!Linux 发行版迎新变化!
日前,红帽发布公告,停止公开提供企业版Linux(RHEL)的源代码。正如我们之前在《公然竖起“付费墙”,RedHat违背开源吗?》一文中报道的那样,这一决策引发的连锁反应扎堆来了。Oracle Linux开发负责人剑指IBM,SUSE也宣布分叉RHEL,相关的下游组织也都各想”自救“策略……

“伤敌1000,自损300。“,一些社区的用户也如此评论。距今已有20余天,此事引发的多米诺骨牌效应彻底呈现出来。

1、Oracle:从我们这里获取!

Oracle早在2006年就推出了现在被称为Oracle Linux的系统,其计划是提供一个与RHEL兼容的Linux发行版,以便不分裂Linux社区,并为客户和ISV提供一个通用平台。在红帽限制了对RHEL源代码的访问之后,Oracle Linux 也发表了他们的看法。

在本周一发布的文章《保持Linux的开放和自由——我们不得不如此》中,Big Red首席企业架构师Edward Screven和Oracle Linux开发负责人Wim Coekaerts指出,IBM正试图扼杀Linux发行版之间的开源竞争进而提高其利润空间,与此同时,他们做出承诺:

“只要Oracle分发Linux, Oracle将公开和免费提供该发行版的二进制文件和源代码。此外,Oracle欢迎各种下游发行版,包括社区和商业发行版。”

Oracle二人还提到了CentOS,声称IBM“实际上扼杀了它作为RHEL免费替代品的地位”。而针对CentOS位置上出现的两个新的RHEL替代品——AlmaLinux和Rocky Linux,“通过扣留RHEL源代码,IBM直接攻击了他们”。

“也许这就是为什么要这样做的真正答案:淘汰竞争对手。竞争对手减少意味着IBM有更多的收入机会。”

此外,Screven和Coekaerts还针对红帽的回应进行了抨击。他们引用了红帽核心平台副总裁Mike McGrath的声明,即免费RHEL发行之所以不能继续下去,是因为“在红帽,成千上万的人花时间编写代码来启用新功能,修复错误,集成不同的包,然后长期支持这些工作……我们必须付钱给做这些工作的人。”

在他们看来,这一理由是站不住脚的。因此在文末他们来了一波嘲讽输出:

“你说你不想为那些RHEL开发人员付费吗?你可以节省金钱的方法很简单:从我们这里获取。成为Oracle Linux 的下游发行商。我们将乐意承担这一责任。”

Oracle与红帽的这场口水仗孰是孰非,围观群众肯定各有见解。不过,单就Oracle开嘲红帽一事就让事态值得深思起来。因为大众印象里,红帽是名副其实的开源先锋,而Oracle则向来对开源不太友好。且不论Oracle对于Sun遗产的挥霍,也不论Oracle与谷歌之间那场旷日持久的Java API版权诉讼之战,甚至于数年前红帽接替Oracle担负起OpenJDK 8和OpenJDK 11的维护一事至今仍让人记忆犹新。

针对RHEL引发的事件,软件自由保护协会的政策研究员布拉德利·库恩的评论颇为犀利,言辞间隐约透露出“屠龙少年终成恶龙”的感叹。

“长期以来,红帽一直以自己比Oracle站在道德制高点而自豪。Oracle的整个商业模式都围绕着使用激进的专有许可来让他们的客户感到恐惧。看到RHEL的商业模式越来越倾向于这个方向,我感到很遗憾。”

2、SUSE表态:分叉RHEL,计划投入1000万美元

在Oracle Linux 发表声明后不久,作为Rancher、NeuVector和SUSE Linux企业版(SLE)背后公司的SUSE也有了动作。

SUSE宣布,它将fork公开可用的RHEL,并开发和维护一种可供所有用户自由使用的RHEL兼容发行版。在接下来的几年里,SUSE计划在这个项目上投资超过1000万美元。

SUSE的首席执行官Dirk-Peter van Leeuwen说:“几十年来,协作和共享成功一直是我们开源社区的基石。我们有责任捍卫这些价值观。这项投资将在未来几年保持创新的流动,并确保客户和社区都不会受到供应商锁定的影响,并在明日和今朝都有真正的选择。”

据公告表明,SUSE致力于与开源社区合作,为RHEL和CentOS用户开发一个长期、持久的兼容替代方案。 SUSE计划将这个项目贡献给一个开源基金会,该基金会将提供对替代源代码的持续免费访问。此外,SUSE还将继续致力于投资Linux解决方案,如SLE和openSUSE。

通常来说,一个主要的开源公司去分叉另一个主要的开源公司的项目是非常罕见的。但SUSE现在这样做是有原因的,而且它可能会得到开源社区中许多人的支持。

自开源运动商业化以来,商业利益与开源中更受社区驱动、更激进的一面之间一直存在着某种紧张关系。在大多数情况下,双方多年来一直保持平衡,并找到了共存的方法。但争论依旧无法避免,就像过去几周,红帽、众多Linux发行版以及提供RHEL兼容发行版的供应商这几方玩家之间发生的那样。

Dirk-Peter van Leeuwen 认为,SUSE之所以涉足这一领域,是因为它相信“变得更加专有不应该成为开源公司之间竞争的基础。我们都为开源社区做出了贡献——就像我们都从中受益一样。这比我们各部分的总和还要大。

可见,SUSE作为一家较大的Linux供应商的介入并不奇怪。除了Oracle之外,较小的供应商没有资源来维护分叉并围绕分叉创建一个社区。SUSE已经经历了30多年发展,虽然也几经沉浮,但依然是一个知名且值得信赖的实体。

“这项合作努力表明了SUSE对促进创新和培育社区驱动型发展的根深蒂固的承诺,并加强了开源软件的基本价值。我们邀请社区积极参与和协作,塑造这一基本软件的未来,“SUSE首席技术官兼首席运营官Thomas Di Giacomo说。“我们坚信,这个新的RHEL兼容Linux发行版,以及SUSE的产品组合,将帮助社区和客户在企业Linux,云计算,容器化,边缘,AI / ML和其他新兴技术方面取得前所未有的进步。”

3、Rocky Linux 自救:这些方法使我们能够合法地获取RHEL二进制文件

对于红帽的决策,大公司有大公司的应对之法,小团体也有小团体的求存之道。尽管在外界看来,在这场连锁反应中,红帽的做法对于AlmaLinux和Rocky Linux 来说是毁灭性的打击,但两者目前均已表示将克服困难继续推出RHEL克隆版。

在名为《保持开源开放》的博文中,Rocky Linux详细介绍了两种可用于获取源代码的替代方法。

其一,是使用基于RHEL的UBI容器映像,可从多个在线来源(包括Docker Hub)获得。使用UBI映像,可以轻松可靠且不受阻碍地获取红帽源。我们已经通过OCI(开放容器计划)容器对此进行了验证,它完全按预期工作。

其二,是按使用付费的公共云实例。有了这个,任何人都可以在云中启动RHEL映像,从而获得所有软件包和勘误表的源代码。这对我们来说是最容易扩展的,因为我们可以通过CI管道完成所有这些工作,启动云映像以通过DNF获取源代码,并自动发布到我们的Git存储库。

Rocky Linux在文中强调,由于GPL的强大功能,这些方法成为可能。没有人可以阻止GPL软件的重新分发。“这两种方法都使我们能够合法地获得RHEL二进制文件和SRP,而不会损害我们对开源软件的承诺或同意妨碍我们权利的TOS或EULA限制。我们的法律顾问向我们保证,我们有权获得我们收到的任何二进制文件的源代码,确保我们能够按照我们的初衷继续推进Rocky Linux。”

当然,他们也指出,上述方法可能会发生变化,因此还在继续探索其他可能。“如果不幸,Red Hat决定加大力度对社区产生负面影响,Rocky Linux将继续为整个开源社区的最大利益服务。”

4、红帽的回应:在健康的开源生态系统中,竞争和创新是齐头并进的

将时间倒转至6月21日。红帽宣布停止向第三方提供RHEL源代码,CentOS Stream 成为公共RHEL相关源代码发布的唯一仓库时,这起事件中的第一张多米诺骨牌应声倒地。

其实这系列事件的肇因可以追溯至更久。之前在很长一段时间里,CentOS本质上是RHEL的免费版本,但2020年底,红帽改变了一切。它没有与RHEL版本重合的常规点发布,而是推出了CentOS Stream,这是“RHEL下一步的'滚动预览',”Red Hat的Chris Wright当时解释说。这使得CentOS 7 成为最后一个长期支持的CentOS版本(将于2024年结束)。

红帽当时表示,这个想法是为了缩短RHEL生态系统中开发人员之间的反馈循环。“请记住,我们是一家上游优先的公司,我们所做的一切都首先进入上游,然后流经系统。这意味着我们在CentOS下游所做的更改现在必须进入上游社区,进入Fedora,然后进入红帽企业Linux,然后流入CentOS。所以它实际上大大减慢了我们的速度,我们无法像我们想要的那样快速移动。”

但這也意味著CentOS和RHEL將不再是100%相容的。这一举动在社区中引起了不小的轰动,许多CentOS贡献者分道扬镳并推出了新的发行版:Rocky Linux 和Alma Linux。

然后某天,Red Hat发现Rocky和Alma等公司正在构建他们的下游Linux发行版,并声称具有bug-for-bug兼容性。当然Rocky和Alma所做的是合法的,并且在他们的权利范围内。但是红帽对此显然有不同看法。

Red Hat副总裁兼RHEL总经理Gunnar Hellekson认为,这相当于“我正在运行红帽企业Linux,其他人来了,拿走了我的开源项目,声称bug对bug的兼容性,从而承诺根本不做任何创新,不以任何方式改进它。在上面放上他们自己的标志,然后积极招募我的用户去使用他们的版本而不是我的版本。在开源社区中,这是不良行为。这是合法的,但它是不受欢迎的。这会适得其反,对生态系统不利”。

6月26日,红帽核心平台副总裁Mike McGrath在回应相关争议时也发表了相似的观点:

在健康的开源生态系统中,竞争和创新是齐头并进的。Red Hat、SUSE、Canonical、AWS和Microsoft都创建了具有相关品牌和生态系统开发工作的Linux发行版。这些变体都利用并贡献了Linux源代码,但没有一个声称与其他变体“完全兼容”。

McGrath直言:“最终,我们没有找到重新构建RHEL的价值,并且我们没有义务让重新构建者的工作更加容易。”对于控诉红帽“违背”GPL协议的批评,他的反驳是:CentOS Stream 的位于GitLab的源代码仓库就是我们构建RHEL发布版的地方,对所有人都是公开的。称RHEL为“闭源”是绝对不真实且不准确的。CentOS Stream 的更新速度比RHEL快,RHEL虽不一定指向最新代码,但代码就是在那里的。

5、尾声:多数批评者忽略的关键点

在此次事件中,多数批评者忽略的关键点是:GPL只要求红帽为向它提供二进制文件的各方提供源代码,而不是向全世界提供源代码。红帽客户仍然可以获得源代码,因此红帽没有违反GPL。GPL并没有将他们从红帽合同中解放出来:如果他们愿意,他们可以重新分发源代码,但同样的,红帽也可以通过终止他们的客户合同来回应他们这样做,这是100%符合GPL的。

任何企业都有合法权利捍卫其模型和产品。撇开大量不真正了解开源许可证如何工作的人不谈,我们的印象是,有很多人觉得仅仅因为这是Linux,他们就有某种权利免费获得它。但事实上,他们没有。这不是自由软件中的“自由”的意思,而且从来都不是。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/6632.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浮点型在内存中的存储

目录 1.浮点数是什么? 2. 浮点数存储规则 1.浮点数是什么? 就是数学中的小数。 常见的浮点数: 3.14159 1E10(1*10^10) 浮点数家族包括: float、double、long double 类型。 浮点数表示的范围&#x…

前端 | ( 十二)CSS3简介及基本语法(中)| 变换、过渡与动画 | 尚硅谷前端html+css零基础教程2023最新

学习来源:尚硅谷前端htmlcss零基础教程,2023最新前端开发html5css3视频 系列笔记: 【HTML4】(一)前端简介【HTML4】(二)各种各样的常用标签【HTML4】(三)表单及HTML4收尾…

【C++基础(六)】类和对象(中) --构造,析构函数

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C初阶之路⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 类和对象-中 1. 前言2. 构造函数3. 构造函数的特性4…

分布式系统的应用程序性能监视工具-skywalking

分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。提供分布式链路日志追踪、剖析、服务网格遥测分析、度量聚合和可视化一体化解决方案。 在应用系统进行实时监控,实现对应用性能管理和故障定位的系统化解决方案中常用的…

爬虫小白-如何辨别是否有cookie反爬案例

目录 一、Cookie介绍二、cookie生成来源区分查找三、如何判断是否有cookie反爬四、来自服务器生成的cookie反爬解决方法五、来自js生成的cookie反爬解决方法 一、Cookie介绍 先推荐该篇文章简单了解Cookie、Session、Token、JWT1、cookie的类型:会话cookie和持久co…

[驱动开发]字符设备驱动应用——点灯

点亮开发板stm32mp157的三盏灯 //头文件 #ifndef __LED_H__ #define __LED_H__//封装GPIO寄存器 typedef struct { volatile unsigned int MODER; // 0x00volatile unsigned int OTYPER; // 0x04volatile unsign…

Linux Day01

目录 一、Linux终端介绍 二、Linux目录介绍 1.目录结构 2.常见目录说明 3.绝对路径与相对路径 4.家目录 一、Linux终端介绍 二、Linux目录介绍 Linux目录:是从根目录"/"开始的 是一棵倒着的树 1.目录结构 2.常见目录说明 目前记住 bin 存放常用命…

跨境独立站如何应对恶意网络爬虫?

目录 跨境出海独立站纷纷成立 爬虫威胁跨境电商生存 如何有效识别爬虫? 技术反爬方案 防爬虫才能保发展 中国出海跨境电商业务,主要选择大平台开设店铺,例如,亚马逊、eBay、Walmart、AliExpress、Zalando等。随着业务的扩大&…

使用springboot进行后端开发100问

properties和yaml文件怎么互转 安装插件 properties文件和yaml文件区别 properties 文件通过“.”和“”赋值,值前不加空格,yaml通过“:”赋值,值前面加一个空格;yaml文件缩进用空格; properties只支持键值对&#x…

Ubuntu下打开QtCreator环境变量LD_LIBRARY_PATH与终端不一致

问题描述: 在unbuntu下使用QtCreator编译、运行程序时,总是出现XXX.so: cannot open shared object file: No such file or directory这类问题,但是在终端中编译或者运行程序则不会出现这些问题。在网上查了好久才明白QtCreator在打开时&…

逻辑漏洞原理及实战

前言 作者简介:不知名白帽,网络安全学习者。 博客主页:不知名白帽_网络安全,CTF,内网渗透-CSDN博客 网络安全交流社区:https://bbs.csdn.net/forums/angluoanquan 目录 逻辑漏洞基础 概述 分类 URL跳转漏洞 概述 危害 漏洞…

51单片机串口

该部分的笔记来自视频教程链接https://www.bilibili.com/video/BV1bt4y197NR/?spm_id_from333.788&vd_sourceb91967c499b23106586d7aa35af46413 一、51单片机串口基础介绍 一般的应用层的协议中采用和校验或CRC校验,而奇偶校验还是解决基本通信中的帧格式中的…

Eclipse整合tomcat时要注意的几点

Eclipse整合tomcat时要注意的几点 1、安装目录及jdk 2、参数配置 注意:Arguments的配置,日志输出文件目录及java内存大小设置等,如下: -Dcatalina.base"E:\apache-tomcat-7.0.52" -Dcatalina.home"E:\apache-tomc…

无符号数和有符号数的“bug”

1. 起因 在实现kmp算法时&#xff0c;出现了诡异的现象&#xff0c;看下面的代码&#xff1a; int KMP (const char *s, const char *t) {int lenS strlen (s);int lenT strlen (t);int next[lenT];get_next (next, t);int i 0;int j 0;while (i < lenS && j …

程序化广告还有未来么?——程序化领域变化的底层逻辑和反思

三、近几年程序化广告领域的变化底层逻辑是什么呢&#xff1f; 当前国内程序化生态的状态&#xff0c;更像是希腊的古典时代&#xff1a;古希腊时代的城邦高度繁荣的时期。很多人可能对古希腊城邦没有概念&#xff0c;我们解释一下&#xff1a; 所谓城邦就是城市国家&#xff0…

涵子来信——自己的电脑——谈谈想法

大家好&#xff1a; 上一次谈论了苹果的那些事&#xff0c;今天我们来聊聊电脑。 我的第一台电脑现在成了这样子&#xff1a; 很多人以为是我自己拆了电脑做研究&#xff0c;其实是我的第一台电脑&#xff0c;真的坏了。 2021年&#xff0c;我有了属于我自己的第一台电脑&am…

链表 --- C语言实现

本篇文章来详细介绍一下数据结构中的链表。 目录 1.链表的概念及结构 2.链表的分类 3.单链表的实现 4.链表的面试题 5.双向链表的实现 6.顺序表和链表的区别 1.链表的概念及结构 概念&#xff1a;链表是一种物理存储结构上非连续、非顺序的存储结构&#xff0c;数据元素…

【HTML5】拖放详解及实现案例

文章目录 效果预览代码实现 效果预览 代码实现 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>一颗不甘坠落的流星</title><style>#div1,#div2 {float: left;width: 100px;height: 27px;margin: 10px;paddin…

关于 Qt在windows使用mingw32编译器时从Qt5.9切换至Qt5.12出现“C2001:常量中有换行符“不修改编码 的解决方法

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/131901444 红胖子(红模仿)的博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…