RHEL Quellcode-Repository nicht mehr öffentlich: Killt Red Hat Alma, Rocky, Oracle Linux & weitere freie Distributionen?

Als Video ansehen
Bereitgestellt über YouTube

RHEL Quellcode-Repository nicht mehr öffentlich: Killt Red Hat Alma, Rocky, Oracle Linux & weitere freie Distributionen?

Die jüngste Ankündigung im CentOS Blog versetzt die GNU/Linux-Community in Auffuhr: Zukünftig soll nur noch der Quellcode von CentOS Stream frei verfügbar sein, nicht jedoch der von Red Hat Enterprise Linux (RHEL). Das hat Konsequenzen für alle freien, binärkompatiblen RHEL-Distributionen – AlmaLinux, Rocky Linux und Oracle zählen zu den Bekanntesten. Dieser Beitrag erklärt, was genau CentOS verändert und welche Auswirkungen das auf eine ganze Gruppe von GNU/Linux-Distributionen hat.

Was ist CentOS und wie unterscheidet es sich zu Red Hat Enterprise Linux?

Zunächst der Kontext, um die Entwicklungen zu verstehen. Red Hat Enterprise Linux entstand 2002 und ist auf Unternehmenskunden abgestimmt. Dazu zählt etwa eine lange Versorgung mit Updates von bis zu 13 Jahren sowie Unterstützung von Red Hat. Dieses Gesamtpaket ist kostenpflichtig.

RHEL verwendet zahlreiche freie Software, deren Lizenzen eine Offenlegung des Quellcodes verlangen. GPL ist die wohl bekannteste, sie kommt auch bei weiten Teilen des Linux-Kernels zum Einsatz. Während RHEL nur zusammen mit Supportverträgen gekauft werden kann, stellt Red Hat den Quellcode ihrer Pakete frei ins Internet, um die Lizenzen zu erfüllen. Daraus entstand 2004 CentOS: Eine zu RHEL binärkompatible GNU/Linux-Distribution. CentOS und Red Hat Enterprise Linux sind identisch wie zwei Häuser, die nach den gleichen Plänen gebaut werden. Der einzige Unterschied: CentOS ist kostenfrei und wird von der Community gepflegt. Diese versucht ebenfalls zu helfen, kann aber natürlich keine Garantien wie etwa eine bestimmte Antwortzeit übernehmen.

Red Hat Enterprise Linux hat sich zum Quasi-Standardbetriebssystem für einen Großteil der Software entwickelt, die sich an Unternehmen richtet. Große Unternehmen wie beispielsweise SAP oder Oracle garantieren, dass ihre Programme auf RHEL laufen. Nutzer haben die Wahl, RHEL mit Support von Red Hat zu kaufen – oder sie nutzen das kostenfreie CentOS. Über viele Jahre existierten beide Projekte. 2014 kam es sogar zu einer direkten Zusammenarbeit zwischen CentOS und Red Hat, bei dem der Konzern vier CentOS-Entwickler einstellte.

Vorgeschichte: Das CentOS Stream Projekt und die inoffiziellen CentOS Nachfolger

Nachdem 2019 Red Hat von IBM gekauft wurde, änderte sich das jedoch: Im selben Jahr wurde CentOS Stream eingeführt. Statt fertiger, stabiler Versionen werden Aktualisierungen fortlaufend und zeitnah verteilt (Rolling Releases). CentOS Stream ist somit nicht mehr gleichwertig, sondern zum Testfeld für RHEL geworden: Stream wird ständig mit neuen Funktionen versorgt, die später ihren Weg in RHEL finden. Ende 2020 wurde das Ende von den klassischen CentOS-Versionen angekündigt: CentOS 7 wird bis zum Lebensende 2024 gepflegt. Den Nachfolger CentOS 8 haben Red Hat bzw. IBM bereits 2021 sterben lassen – er wurde bei weitem nicht so lange unterstützt, wie die Vorgängerversionen. Sondern lediglich gut zwei Jahre von September 2019 bis November 2021.

De facto ist CentOS damit für einen Großteil der Zielgruppe unbrauchbar geworden. Unternehmen möchten keine Rolling Release Experimente auf ihren produktiven Systemen – sondern robuste, zuverlässige Server, mit denen sie planen können. Daher sind verschiedene neue Distributionen entstanden: Rocky Linux stammt vom CentOS-Mitgründer und möchte damit wieder eine binärkompatible Alternative zu RHEL anbieten. Das von CloudLinux entwickelte AlmaLinux hat das gleiche Ziel, eben so wie Oracle Linux.

Red Hat und IBM machen Rocky, Alma & Co. das Leben schwer

Am 21. Juni 2023 kündigte Red Hat an, den Quellcode von RHEL nicht mehr öffentlich verfügbar zu machen. Nur noch zahlende Kunden können weiterhin darauf zugreifen. Auf der CentOS Mailingliste gaben die Entwickler auf Nachfrage am 22. Juni an, dass dies ab sofort für RHEL 8 und 9 sowie jegliche zukünftige Versionen gilt. Eine Übergangsfrist gibt es nicht. Lediglich CentOS Stream und das bald ohnehin auslaufende RHEL/CentOS 7 sind davon ausgenommen.

Die Rocky Linux Entwickler waren laut einem Forumsbeitrag vom 21. Juni offensichtlich ebenfalls nicht darüber informiert worden. Sie verneinen, dass die Distribution dadurch sterben wird. Allerdings müssen sie selbst erst herausfinden, „was das bedeutet“ und wollen eine kurzfristige sowie dauerhafte Lösung entwickeln. Das klingt vernünftig, denn die Distribution ist damit (wie alle anderen) akut von Aktualisierungen abgeschnitten. Bislang wurde der Quellcode auf git.centos.org für alle RHEL-Versionen öffentlich verfügbar gemacht. Sollte RHEL Updates bereitstellen, können diese aktuell nicht verteilt werden – ein Damoklesschwert. Bereits jetzt gibt es mehrere ausstehende Aktualisierungen. Spätestens bei Sicherheitsupdates wird dies kritisch. Zumal die Kompatibilität zu Red Hat damit recht schnell schwindet.

Wie kann das Problem gelöst werden?

Das Rocky Linux Team hatte am heutigen (22.06.2023) bereits eine Krisensitzung. Eine offizielle Erklärung ist in Arbeit. Positiv: Das Team geht mit der Situation sehr transparent um und veröffentlichte im Forumsbeitrag einen Etherpad-Link. Dort kann jeder den aktuellen Stand der Pläne in Echtzeit verfolgen. Zum Erstellzeitpunkt dieses Artikels wird als akute Lösung versucht, die Pakete mit dem für CentOS Stream bereitgestellten Quellcode (dieser ist als Einziger ausgenommen) zu bauen. Es gibt sogar Überlegungen, dies nicht nur für Rocky selbst bereitzustellen – sondern auf einer allgemeinen Seite für alle. Ebenfalls eine gute Idee, der jedoch anscheinend gesetzlich durch Red Hat angreifbar ist. Immerhin soll es legal möglich sein, die Werkzeuge dafür anzubieten.

Doch dies klingt einfacher, als es ist: Theoretisch befinden sich zwar alle Patche in CentOS Stream. Es müssen jedoch die neueren, (noch) nicht in RHEL enthaltenen Aktualisierungen gefiltert werden. Erschwerend können sich die Versionsnummern unterscheiden.

Können Rocky Linux & co. nicht eine RHEL-Lizenz kaufen, um Zugriff auf den Quellcode zu erhalten?

AlmaLinux hat dieser naheliegenden Idee bereits eine Absage erteilt: Die Lizenzbedingungen verbieten es auf Seite 3 unter 1.2g tatsächlich, die Leistungen weiterzugeben.

Wer den letzten Beitrag gelesen bzw. angeschaut hat, in dem ich Microsofts Ex-CEO Steve Ballmers falsches Verständnis der GPL aufgezeigt habe, fragt sich nun sicherlich: Verletzt Red Hat damit nicht die GPL? Grundsätzlich verpflichtet die GPL nur dazu, den Quellcode mitzuliefern, wenn binäre Dateien weitergegeben oder verkauft werden. Beides ist bei RHEL der Fall – die Erklärung erwähnt ausdrücklich, dass zahlende Kunden weiterhin Zugriff darauf haben. Der Verkauf ist übrigens legitim: Obwohl freie Software oft kostenfrei ist, schreibt die GPL das nicht vor. Es gibt nur eine Ausnahme: Wer Binärdateien ohne Quellcode vertreibt, muss ihn auf Nachfrage bereitstellen. Der Preis dafür wird eingeschränkt. So soll verhindert werden, dass Unternehmen exorbitante Summen für den Code verlangen und somit die GPL effektiv umgehen.

Mit Ausnahme einer bestimmten Situation beinhaltet die GNU General Public License (GPL) keinerlei Bedingungen darüber, wie viel man für den Vertrieb von Freie-Software-Kopien verlangen kann.
[…]
Die einzige Ausnahme besteht in dem Fall, in denen Binärdateien ohne den entsprechenden vollständigen Quellcode vertrieben werden. Die Beteiligten sind durch die GNU GPL verpflichtet, den Quellcode auf weitere Anfrage bereitzustellen. Ohne eine Begrenzung des Preises für den Quellcode wäre es ihnen möglich einen Preis festzulegen, der für jedermann zu hoch zu bezahlen wäre ‑ wie eine Milliarde Euro ‑ und somit vorgeben den Quellcode freizugeben, obwohl sie ihn in Wahrheit verbergen.

https://www.gnu.org/philosophy/selling.de.html

Darf Red Hat auch die Weitergabe in den AGB einschränken?

Hier wird es komplizierter. GNU stellt in ihren FAQ an mehreren Punkten zur GPL Version 2 klar:

Dies scheint zunächst vergleichbar mit Red Hats AGB, welche eine Weitergabe durch Kunden ausschließen: Würde beispielsweise Rocky Linux ein Abo buchen, den Quellcode daraus frei verfügbar machen oder Pakete erstellen und verbreiten, wäre dies aus Sicht von Red Hat eine klare Verletzung dagegen. Während es laut GPL erlaubt ist, eine Software zu kaufen und diese sowohl weiterzuverkaufen, als auch kostenfrei weiterzugeben – jeder besitzt die volle Freiheit.

Allerdings wurde CentOS ja nicht komplett eingestellt: Der Quellcode für CentOS Stream ist weiterhin verfügbar und wird es explizit auch bleiben. Da CentOS Stream die Vorschauversion für RHEL wurde, ist der Quellcode daher sogar öffentlich, noch bevor er in RHEL gegen Bezahlung verfügbar ist. Zwar ist die Zuordnung schwieriger, da sich z.B. Versionsnummern unterscheiden können. Das hat auf den Quelltext jedoch keine Auswirkungen. Ist die GPL somit erfüllt? Gelten die Einschränkungen aus dem Vertrag lediglich für die Binärdateien, oder auch den Quellcode? Meiner Meinung nach sind diese unzulässig, da die GPL in der Hinsicht recht klar ist und keine solchen Ausnahmen erlaubt. Letztendlich sind das schwierige Fragen, die wohl nur ein Anwalt/Lizenzexperte abschließend klären kann.

Fazit: Red Hat hat den Alternativen ein geschicktes Bein gestellt

Durch die Einschränkungen und Vermischung mit CentOS Stream machen es Red Hat/IBM den freien Projekten deutlich schwieriger, weiterhin (kostenfreie) GNU/Linux-Distributionen anzubieten, die zu 100% mit RHEL kompatibel sind. Selbst wenn das Vorgehen die GPL erfüllt, ist es definitiv ein Angriff auf freie Software. Red Hat möchte die wichtige Marktstellung der eigenen Distribution nutzen, um es der kostenfreien Konkurrenz so schwer wie möglich zu machen. Da RHEL selbst viele freie Software mit Copyleft verwendet, haben sie wenig alternative Handhabe gegen die „Konkurrenz“. Anders lässt sich das Vorgehen nicht erklären. Zumal schlussendlich nur Red Hat davon profitiert.

Allerdings heißt schwierig nicht unmöglich. Das von manchen vorausgesehene Ende von Rocky Linux & co. wird es daher wahrscheinlich nicht bedeuten. Sondern man wird Wege finden, die von Red Hat in den Weg gelegten Steine wieder zur Seite zu räumen. Im besten Falle ziehen alle alternativen Distributionen am gleichen Strang und entwickeln gemeinsam eine Lösung, die jeder nutzen kann – ähnlich, wie das AlmaLinux Team es in ihren Überlegungen bereits

Ergänzungen vom 23.06.2023

Ankündigung von Rocky Linux

Kurz nach der Aufnahme des Videos hat Rocky Linux wie angekündigt auf Red Hats Änderungen reagiert. Darin werden die Änderungen von Red Hat als eher kleineres Problem beschrieben, die man dank einer schnellen Entwicklung lösen kann. Akute Workarounds seien bereits vorhanden, sodass es für die Nutzer zu keinen Einschränkungen kommt. Der Gründer betont, wie wichtig ihm die freie Verfügbarkeit von quelloffener Software ist. Durch die Beteiligung von Rocky an CentOS Stream, Fedora und anderen quelloffenen Projekten wird die Enterprise Linux Gemeinschaft gestärkt. Er bestätigt zudem, dass Rocky 8 sowie 9 wie versprochen bis 2029 bzw. 2032 unterstützt werden.

CentOS-Entwickler äußert sich zu GPL-Frage

In der CentOS Mailingliste wurde eine ähnliche Frage an den Entwickler gestellt, die ich im Artikel erwähnt hatte. Sein Beispiel: Als zahlender Red Hat Kunde lädt er das Paket vom Linux-Kernel herunter und stellt es auf einen öffentlichen Server bereit, sodass es jeder herunterladen kann. Laut dem Entwickler ist dies legitim. Er begründet es ebenfalls mit der Freiheit der GPL, die nicht einschränkbar ist. Anders gesagt: Aus seiner Sicht ist das Verbot zur Weitergabe aus den Red Hat AGB hinfällig – unabhängig davon, ob die Pakete auch frei an anderen Stellen (CentOS Stream) verfügbar sind.

Ergänzungen vom 24.06.2023

Auch im Blog von AlmaLinux gibt es inzwischen einen Eintrag zu dieser Thematik. Die Kernbotschaft ist ähnlich wie bei Rocky: Man möchte kurzfristig Sicherheitsupdates ausliefern, dafür bedient man sich bei CentOS Stream/Oracle Linux. Dies soll sorgfältig geschehen, damit AlmaLinux weiterhin 100% zu RHEL kompatibel bleibt. Eine langfristige Strategie muss noch gefunden werden.

Leave a Reply