整理丨諾亞
日前,紅帽發(fā)布公告,停止公開提供企業(yè)版Linux(RHEL)的源代碼。正如我們之前在《公然豎起“付費(fèi)墻”,RedHat違背開源嗎?》一文中報(bào)道的那樣,這一決策引發(fā)的連鎖反應(yīng)扎堆來了。Oracle Linux開發(fā)負(fù)責(zé)人劍指IBM,SUSE也宣布分叉RHEL,相關(guān)的下游組織也都各想”自救“策略……
“傷敵1000,自損300?!埃恍┥鐓^(qū)的用戶也如此評論。距今已有20余天,此事引發(fā)的多米諾骨牌效應(yīng)徹底呈現(xiàn)出來。
1、Oracle:從我們這里獲??!
Oracle早在2006年就推出了現(xiàn)在被稱為Oracle Linux的系統(tǒng),其計(jì)劃是提供一個(gè)與RHEL兼容的Linux發(fā)行版,以便不分裂Linux社區(qū),并為客戶和ISV提供一個(gè)通用平臺。在紅帽限制了對RHEL源代碼的訪問之后,Oracle Linux 也發(fā)表了他們的看法。
在本周一發(fā)布的文章《保持Linux的開放和自由——我們不得不如此》中,Big Red首席企業(yè)架構(gòu)師Edward Screven和Oracle Linux開發(fā)負(fù)責(zé)人Wim Coekaerts指出,IBM正試圖扼殺Linux發(fā)行版之間的開源競爭進(jìn)而提高其利潤空間,與此同時(shí),他們做出承諾:
“只要Oracle分發(fā)Linux, Oracle將公開和免費(fèi)提供該發(fā)行版的二進(jìn)制文件和源代碼。此外,Oracle歡迎各種下游發(fā)行版,包括社區(qū)和商業(yè)發(fā)行版?!?/p>
Oracle二人還提到了CentOS,聲稱IBM“實(shí)際上扼殺了它作為RHEL免費(fèi)替代品的地位”。而針對CentOS位置上出現(xiàn)的兩個(gè)新的RHEL替代品——AlmaLinux和Rocky Linux,“通過扣留RHEL源代碼,IBM直接攻擊了他們”。
“也許這就是為什么要這樣做的真正答案:淘汰競爭對手。競爭對手減少意味著IBM有更多的收入機(jī)會(huì)。”
此外,Screven和Coekaerts還針對紅帽的回應(yīng)進(jìn)行了抨擊。他們引用了紅帽核心平臺副總裁Mike McGrath的聲明,即免費(fèi)RHEL發(fā)行之所以不能繼續(xù)下去,是因?yàn)椤霸诩t帽,成千上萬的人花時(shí)間編寫代碼來啟用新功能,修復(fù)錯(cuò)誤,集成不同的包,然后長期支持這些工作……我們必須付錢給做這些工作的人。”
在他們看來,這一理由是站不住腳的。因此在文末他們來了一波嘲諷輸出:
“你說你不想為那些RHEL開發(fā)人員付費(fèi)嗎?你可以節(jié)省金錢的方法很簡單:從我們這里獲取。成為Oracle Linux 的下游發(fā)行商。我們將樂意承擔(dān)這一責(zé)任。”
Oracle與紅帽的這場口水仗孰是孰非,圍觀群眾肯定各有見解。不過,單就Oracle開嘲紅帽一事就讓事態(tài)值得深思起來。因?yàn)榇蟊娪∠罄?,紅帽是名副其實(shí)的開源先鋒,而Oracle則向來對開源不太友好。且不論Oracle對于Sun遺產(chǎn)的揮霍,也不論Oracle與谷歌之間那場曠日持久的Java API版權(quán)訴訟之戰(zhàn),甚至于數(shù)年前紅帽接替Oracle擔(dān)負(fù)起OpenJDK 8和OpenJDK 11的維護(hù)一事至今仍讓人記憶猶新。
針對RHEL引發(fā)的事件,軟件自由保護(hù)協(xié)會(huì)的政策研究員布拉德利·庫恩的評論頗為犀利,言辭間隱約透露出“屠龍少年終成惡龍”的感嘆。
“長期以來,紅帽一直以自己比Oracle站在道德制高點(diǎn)而自豪。Oracle的整個(gè)商業(yè)模式都圍繞著使用激進(jìn)的專有許可來讓他們的客戶感到恐懼??吹絉HEL的商業(yè)模式越來越傾向于這個(gè)方向,我感到很遺憾?!?/p>
2、SUSE表態(tài):分叉RHEL,計(jì)劃投入1000萬美元
在Oracle Linux 發(fā)表聲明后不久,作為Rancher、NeuVector和SUSE Linux企業(yè)版(SLE)背后公司的SUSE也有了動(dòng)作。
SUSE宣布,它將fork公開可用的RHEL,并開發(fā)和維護(hù)一種可供所有用戶自由使用的RHEL兼容發(fā)行版。在接下來的幾年里,SUSE計(jì)劃在這個(gè)項(xiàng)目上投資超過1000萬美元。
SUSE的首席執(zhí)行官Dirk-Peter van Leeuwen說:“幾十年來,協(xié)作和共享成功一直是我們開源社區(qū)的基石。我們有責(zé)任捍衛(wèi)這些價(jià)值觀。這項(xiàng)投資將在未來幾年保持創(chuàng)新的流動(dòng),并確??蛻艉蜕鐓^(qū)都不會(huì)受到供應(yīng)商鎖定的影響,并在明日和今朝都有真正的選擇?!?/p>
據(jù)公告表明,SUSE致力于與開源社區(qū)合作,為RHEL和CentOS用戶開發(fā)一個(gè)長期、持久的兼容替代方案。?SUSE計(jì)劃將這個(gè)項(xiàng)目貢獻(xiàn)給一個(gè)開源基金會(huì),該基金會(huì)將提供對替代源代碼的持續(xù)免費(fèi)訪問。此外,SUSE還將繼續(xù)致力于投資Linux解決方案,如SLE和openSUSE。
通常來說,一個(gè)主要的開源公司去分叉另一個(gè)主要的開源公司的項(xiàng)目是非常罕見的。但SUSE現(xiàn)在這樣做是有原因的,而且它可能會(huì)得到開源社區(qū)中許多人的支持。
自開源運(yùn)動(dòng)商業(yè)化以來,商業(yè)利益與開源中更受社區(qū)驅(qū)動(dòng)、更激進(jìn)的一面之間一直存在著某種緊張關(guān)系。在大多數(shù)情況下,雙方多年來一直保持平衡,并找到了共存的方法。但爭論依舊無法避免,就像過去幾周,紅帽、眾多Linux發(fā)行版以及提供RHEL兼容發(fā)行版的供應(yīng)商這幾方玩家之間發(fā)生的那樣。
Dirk-Peter van Leeuwen 認(rèn)為,SUSE之所以涉足這一領(lǐng)域,是因?yàn)樗嘈拧白兊酶訉S胁粦?yīng)該成為開源公司之間競爭的基礎(chǔ)。我們都為開源社區(qū)做出了貢獻(xiàn)——就像我們都從中受益一樣。這比我們各部分的總和還要大。
可見,SUSE作為一家較大的Linux供應(yīng)商的介入并不奇怪。除了Oracle之外,較小的供應(yīng)商沒有資源來維護(hù)分叉并圍繞分叉創(chuàng)建一個(gè)社區(qū)。SUSE已經(jīng)經(jīng)歷了30多年發(fā)展,雖然也幾經(jīng)沉浮,但依然是一個(gè)知名且值得信賴的實(shí)體。
“這項(xiàng)合作努力表明了SUSE對促進(jìn)創(chuàng)新和培育社區(qū)驅(qū)動(dòng)型發(fā)展的根深蒂固的承諾,并加強(qiáng)了開源軟件的基本價(jià)值。我們邀請社區(qū)積極參與和協(xié)作,塑造這一基本軟件的未來,“SUSE首席技術(shù)官兼首席運(yùn)營官Thomas Di Giacomo說?!拔覀儓?jiān)信,這個(gè)新的RHEL兼容Linux發(fā)行版,以及SUSE的產(chǎn)品組合,將幫助社區(qū)和客戶在企業(yè)Linux,云計(jì)算,容器化,邊緣,AI / ML和其他新興技術(shù)方面取得前所未有的進(jìn)步。”
3、Rocky Linux 自救:這些方法使我們能夠合法地獲取RHEL二進(jìn)制文件
對于紅帽的決策,大公司有大公司的應(yīng)對之法,小團(tuán)體也有小團(tuán)體的求存之道。盡管在外界看來,在這場連鎖反應(yīng)中,紅帽的做法對于AlmaLinux和Rocky Linux 來說是毀滅性的打擊,但兩者目前均已表示將克服困難繼續(xù)推出RHEL克隆版。
在名為《保持開源開放》的博文中,Rocky Linux詳細(xì)介紹了兩種可用于獲取源代碼的替代方法。
其一,是使用基于RHEL的UBI容器映像,可從多個(gè)在線來源(包括Docker Hub)獲得。使用UBI映像,可以輕松可靠且不受阻礙地獲取紅帽源。我們已經(jīng)通過OCI(開放容器計(jì)劃)容器對此進(jìn)行了驗(yàn)證,它完全按預(yù)期工作。
其二,是按使用付費(fèi)的公共云實(shí)例。有了這個(gè),任何人都可以在云中啟動(dòng)RHEL映像,從而獲得所有軟件包和勘誤表的源代碼。這對我們來說是最容易擴(kuò)展的,因?yàn)槲覀兛梢酝ㄟ^CI管道完成所有這些工作,啟動(dòng)云映像以通過DNF獲取源代碼,并自動(dòng)發(fā)布到我們的Git存儲庫。
Rocky Linux在文中強(qiáng)調(diào),由于GPL的強(qiáng)大功能,這些方法成為可能。沒有人可以阻止GPL軟件的重新分發(fā)?!斑@兩種方法都使我們能夠合法地獲得RHEL二進(jìn)制文件和SRP,而不會(huì)損害我們對開源軟件的承諾或同意妨礙我們權(quán)利的TOS或EULA限制。我們的法律顧問向我們保證,我們有權(quán)獲得我們收到的任何二進(jìn)制文件的源代碼,確保我們能夠按照我們的初衷繼續(xù)推進(jìn)Rocky Linux?!?/p>
當(dāng)然,他們也指出,上述方法可能會(huì)發(fā)生變化,因此還在繼續(xù)探索其他可能?!叭绻恍遥琑ed Hat決定加大力度對社區(qū)產(chǎn)生負(fù)面影響,Rocky Linux將繼續(xù)為整個(gè)開源社區(qū)的最大利益服務(wù)?!?/p>
4、紅帽的回應(yīng):在健康的開源生態(tài)系統(tǒng)中,競爭和創(chuàng)新是齊頭并進(jìn)的
將時(shí)間倒轉(zhuǎn)至6月21日。紅帽宣布停止向第三方提供RHEL源代碼,CentOS Stream 成為公共RHEL相關(guān)源代碼發(fā)布的唯一倉庫時(shí),這起事件中的第一張多米諾骨牌應(yīng)聲倒地。
其實(shí)這系列事件的肇因可以追溯至更久。之前在很長一段時(shí)間里,CentOS本質(zhì)上是RHEL的免費(fèi)版本,但2020年底,紅帽改變了一切。它沒有與RHEL版本重合的常規(guī)點(diǎn)發(fā)布,而是推出了CentOS Stream,這是“RHEL下一步的'滾動(dòng)預(yù)覽',”Red Hat的Chris Wright當(dāng)時(shí)解釋說。這使得CentOS 7 成為最后一個(gè)長期支持的CentOS版本(將于2024年結(jié)束)。
紅帽當(dāng)時(shí)表示,這個(gè)想法是為了縮短RHEL生態(tài)系統(tǒng)中開發(fā)人員之間的反饋循環(huán)?!罢堄涀。覀兪且患疑嫌蝺?yōu)先的公司,我們所做的一切都首先進(jìn)入上游,然后流經(jīng)系統(tǒng)。這意味著我們在CentOS下游所做的更改現(xiàn)在必須進(jìn)入上游社區(qū),進(jìn)入Fedora,然后進(jìn)入紅帽企業(yè)Linux,然后流入CentOS。所以它實(shí)際上大大減慢了我們的速度,我們無法像我們想要的那樣快速移動(dòng)。”
但這也意味著CentOS和RHEL將不再是100%相容的。這一舉動(dòng)在社區(qū)中引起了不小的轟動(dòng),許多CentOS貢獻(xiàn)者分道揚(yáng)鑣并推出了新的發(fā)行版:Rocky Linux 和Alma Linux。
然后某天,Red Hat發(fā)現(xiàn)Rocky和Alma等公司正在構(gòu)建他們的下游Linux發(fā)行版,并聲稱具有bug-for-bug兼容性。當(dāng)然Rocky和Alma所做的是合法的,并且在他們的權(quán)利范圍內(nèi)。但是紅帽對此顯然有不同看法。
Red Hat副總裁兼RHEL總經(jīng)理Gunnar Hellekson認(rèn)為,這相當(dāng)于“我正在運(yùn)行紅帽企業(yè)Linux,其他人來了,拿走了我的開源項(xiàng)目,聲稱bug對bug的兼容性,從而承諾根本不做任何創(chuàng)新,不以任何方式改進(jìn)它。在上面放上他們自己的標(biāo)志,然后積極招募我的用戶去使用他們的版本而不是我的版本。在開源社區(qū)中,這是不良行為。這是合法的,但它是不受歡迎的。這會(huì)適得其反,對生態(tài)系統(tǒng)不利”。
6月26日,紅帽核心平臺副總裁Mike McGrath在回應(yīng)相關(guān)爭議時(shí)也發(fā)表了相似的觀點(diǎn):
在健康的開源生態(tài)系統(tǒng)中,競爭和創(chuàng)新是齊頭并進(jìn)的。Red Hat、SUSE、Canonical、AWS和Microsoft都創(chuàng)建了具有相關(guān)品牌和生態(tài)系統(tǒng)開發(fā)工作的Linux發(fā)行版。這些變體都利用并貢獻(xiàn)了Linux源代碼,但沒有一個(gè)聲稱與其他變體“完全兼容”。
McGrath直言:“最終,我們沒有找到重新構(gòu)建RHEL的價(jià)值,并且我們沒有義務(wù)讓重新構(gòu)建者的工作更加容易。”對于控訴紅帽“違背”GPL協(xié)議的批評,他的反駁是:CentOS Stream 的位于GitLab的源代碼倉庫就是我們構(gòu)建RHEL發(fā)布版的地方,對所有人都是公開的。稱RHEL為“閉源”是絕對不真實(shí)且不準(zhǔn)確的。CentOS Stream 的更新速度比RHEL快,RHEL雖不一定指向最新代碼,但代碼就是在那里的。
5、尾聲:多數(shù)批評者忽略的關(guān)鍵點(diǎn)
在此次事件中,多數(shù)批評者忽略的關(guān)鍵點(diǎn)是:GPL只要求紅帽為向它提供二進(jìn)制文件的各方提供源代碼,而不是向全世界提供源代碼。紅帽客戶仍然可以獲得源代碼,因此紅帽沒有違反GPL。GPL并沒有將他們從紅帽合同中解放出來:如果他們愿意,他們可以重新分發(fā)源代碼,但同樣的,紅帽也可以通過終止他們的客戶合同來回應(yīng)他們這樣做,這是100%符合GPL的。
任何企業(yè)都有合法權(quán)利捍衛(wèi)其模型和產(chǎn)品。撇開大量不真正了解開源許可證如何工作的人不談,我們的印象是,有很多人覺得僅僅因?yàn)檫@是Linux,他們就有某種權(quán)利免費(fèi)獲得它。但事實(shí)上,他們沒有。這不是自由軟件中的“自由”的意思,而且從來都不是。
參考鏈接:
https://www.oracle.com/news/announcement/blog/keep-linux-open-and-free-2023-07-10/
https://www.theregister.com/2023/07/10/oracle_ibm_rhel_code/?td=rt-3a
https://www.suse.com/news/SUSE-Preserves-Choice-in-Enterprise-Linux/
https://www.redhat.com/en/blog/red-hats-commitment-open-source-response-gitcentosorg-changes