Debian und Devuan haben sich wegen Sysvinits zusammengeschlossen

    Vor einigen Tagen wurde eine andere Version des klassischen Unix / Linux-Initialisierungssystems sysvinit 2.92 vorzeitig veröffentlicht . Die vorige Ausgabe 2.91 wurde vor etwas mehr als einem Monat veröffentlicht.


    Devu


    Was ist bemerkenswert an der Veröffentlichung der Nebenversion des alten Initialisierungssystems (SI), die fast alle modernen Linux-Distributionen aufgegeben haben, und was ist die Freude der Open Source-Community und der Debian-Linux-Benutzer?


    Diese Episode ist interessant, weil die Veröffentlichung von zwei antagonistischen Entwicklungsteams von Debian und Devuan gemeinsam durchgeführt wurde, die sich vor 4 Jahren wegen der Situation um systemd spalteten . Aber lass uns bestellen.


    Dreifache Abstimmung über Systemd


    Einige Monate vor der Veröffentlichung von Debian Jessie mussten sich die Projektleiter für das Initialisierungssystem entscheiden. Zu dieser Zeit gewann systemd bereits an Popularität und war einer der Hauptwettbewerber. Insgesamt nahmen vier SI an dem Rennen teil.


    • systemd;
    • Emporkömmling;
    • openrc;
    • Sysvinit.

    Die Abstimmung hatte auch die Option "weitere Diskussion erforderlich".


    Die Ergebnisse der ersten Runde zeigten ein Gleichgewicht zwischen Startup und Systemd , von denen jede 4 Stimmen erhielt. Um eine Entscheidung zu treffen, betrug das Verhältnis der Stimmen 2: 1.


    Zwei Wochen später, Anfang Februar 2014, verging die zweite Runde, in der eigentlich nichts Neues geschah. Die Stimmen wurden zu gleichen Teilen aufgeteilt , über weitere Debatten wurde entschieden.


    Für systemd stimmte:


    • Bdale Garbee - Vorsitzender des Technischen Komitees;
    • Don Armstrong;
    • Keith Packard - G-Guru X, derzeit bei Valve tätig;
    • Russ Albery.

    Für Emporkömmlinge stimmten:


    • Colin Watson;
    • Steve Langasek;
    • Ian Jackson;
    • Andreas Barth

    Zum dritten Mal stimmte TK ab, vereinfachte die Regeln und stellte die Frage. Nachdem der Ausschuss alle sekundären Fragen von der Tagesordnung ausgeschlossen und die Entscheidungsschwelle auf eine einfache Mehrheit herabgesetzt hatte, stimmte er für systemd ab der dritten Aufforderung.


    Nein, keiner der Befürworter der Emporkömmlinge trat in das gegenüberliegende Lager, das Ergebnis der Abstimmung wurde durch eine zusätzliche Abstimmung vom Vorsitzenden des Technischen Komitees, Bidale Garbi, entschieden, und mit nur einer Stimme wurde die SI-Frage für Debian Linux mit der vorherigen Stellungnahme 4: 4 gelöst.


    Linus rasiert Bidale Garby auf der LinuxConf 2009 .


    rasieren


    Das Ergebnis der Abstimmung verursachte bei den Gegnern von systemd ein scharfes Gefühl von Verbitterung, Frustration und Ungerechtigkeit . Auf den Debian-Mailinglisten wurde die Leidenschaft ernsthaft ausgespielt.


    Ian Jackson forderte Bidale Garbi zum Rücktritt vom Amt des TC-Vorsitzenden auf. Dann entschloss er sich, vorübergehend von der Teilnahme an den Angelegenheiten des TC zurückzuziehen.


    Nach einigen Tagen am 11. Februar wurde klar, dass die Entscheidung für Debian Linux endgültig gefallen ist, und in absehbarer Zeit wird das Hauptsystem zur Initialisierung der Distribution systemd sein .


    Devuan


    Die Entwickler der Debian-Linux-Distribution, die mit dieser Situation nicht einverstanden waren, trauerten kurz und sechs Monate vor der Veröffentlichung der 8. Version erstellten sie ihren Fork auf Basis von systvinit und nannten ihn Devuan , beginnend mit der Wortkombination Dev one .


    Der Höhepunkt des Distributionskits und sein Hauptunterschied zum übergeordneten Betriebssystem ist der Grund, warum der ganze Trubel ausgelöst wurde. Devuan Linux wählte sysvinit als SI. Im Allgemeinen wurde die Geburt der Distribution mit großer Begeisterung unter Linux-Benutzern begrüßt, wobei der russischsprachige Teil davon nicht ausgeschlossen wurde .


    Im Juni wurde die zweite Version der Distribution auf der Paketbasis der neuesten Version ihres Vorfahren Debian Stretch veröffentlicht. Neben sysvinit können Sie openrc auch als SI auswählen .


    Versuchen wir zu verstehen, warum es eine solche Spaltung zwischen den Debian-Entwicklern gab und generell zwischen einer großen Anzahl von Benutzern verschiedener Linux-Variationen. Immerhin gab es davor und dort schwierige Entscheidungen und gefährliche Wendungen in der Geschichte von GNU / Linux: GPLv3 oder nicht , UEFI SecureBoot usw. Warum wurden dann alle von der Spule geworfen ?


    Streitigkeiten um systemd


    Wenn wir das Wesentliche aller Streitigkeiten auf eine These reduzieren, können wir sagen, dass systemd den Austausch der vollständigsten Kontrolle über die Initialisierung des Systems und seiner Dienste zur vollständigen Ablehnung der Unix-Philosophie impliziert.


    Der erste wird von systemgegnerischen Gegnern heftig angefochten , der zweite dagegen bestreitet nicht. Nicht alle sind sich einig, dass systemd das Leben des Administrators einfacher macht, aber nur wenige können behaupten, dass systemd und Unix Way zwei Extreme sind.


    systemd bietet aggressive Parallelisierungsfunktionen, verwendet Sockets und D-Bus-Aktivierung für Dienste, die gestartet werden, bietet die Möglichkeit, Daemons nach Bedarf zu starten, überwacht Prozesse mithilfe von Linux-Steuerungsgruppen, unterstützt Momentaufnahmen und die Wiederherstellung des Systemstatus, Mounts und Mount-Punkte und implementiert Abhängigkeiten Logiksteuerprozess komplexer Transaktionen .

    Wo entstand der Bedarf für ein derart umfassendes System zur Verwaltung der Initialisierung des Betriebssystems und seiner Prozesse? Ich glaube nicht an Verschwörungstheorien und deshalb glaube ich, dass die Gründe in den Mängeln von sysvinit und anderen SI lagen .


    Sysvinit wurde 1983 gegründet und konnte eine Reihe wichtiger Aufgaben nicht lösen:


    • paralleler Start von Prozessen;
    • Wechselmedienerkennung;
    • Aktivierung von Socket-basierten Diensten;
    • zuverlässig Abhängigkeiten zwischen verschiedenen Prozessen und Diensten kontrollieren;
    • frühzeitige Protokollierung von Ereignissen durch /dev/log.

    All diese und viele andere Unannehmlichkeiten wurden schließlich in systemd gelöst . Standardisierung von Konfigurationsdateien, Vereinheitlichung der Syntax und Verwaltung von Service-Abhängigkeiten basierend auf cgroupsangeblich zugelassenen Anbietern kommerzieller Linux-Distributionen, um Administratoren das Leben zu erleichtern und die Kosten für die Verwaltung von Serverflotten zu reduzieren .


    Aber was war der Preis? Für ein seltsames Design ist das Geistesprodukt von Lennart Pottering von der üblichen SI zu einer Reihe von Bausteinen für ein Linux-System geworden. Zitat von der Hauptseite des Projekts. Dieser Status im Status steuert die Verbindung von Geräten, Dateisystemeintrittspunkten, Netzwerkverbindungen, Systemzeitdienst, Benutzersitzungen, Systemprotokollen usw.


    Zur gleichen Zeit begannen viele DE-Entwickler, insbesondere Gnome, Elemente der grafischen Umgebung an systemd zu binden :


    • Energieverwaltung;
    • Benutzersitzungsverwaltung;
    • Protokoll anzeigen;
    • Wenn Sie den Laptopbildschirm schließen, werden die Ereignisse nicht verarbeitet.
    • Wayland

    Das alles wird in Gnome nicht ohne spezielle Patches abheben, wenn Sie eine andere SI außer systemd wählen .


    Der Grund für diese Situation ist, dass es zu schwierig ist, zwei Optionen für viele Programmsätze beizubehalten: eine mit systemd und die andere ohne. Dadurch wird eine Situation geschaffen, in der es nicht möglich ist, ein anderes SI in der Linux-Distribution auszuwählen.


    Cloud-Keyword-Tags um systemd auf Twitter .


    systemd


    Nun, es gibt keine Möglichkeit, die SI zu wählen. Ist das wirklich wichtig? Ich glaube nicht, dass es mich sehr aufregen wird, wenn es keine Möglichkeit gibt, den OS-Loader oder den DHCP-Client zu wählen.


    Wie sich herausstellt, sind viele systemd- Benutzer durch viele Dinge verärgert. Eine frühe und vollständige Protokollierung von Systemereignissen ab dem Start ist schön, aber wie können Sie sich ein Linux-System mit binären Protokolldateien vorstellen?


    Lennart Pottering kann ein guter Programmierer sein, aber seine Art der Kommunikation und Reaktion auf die festgestellten Mängel und Kritikpunkte ist weniger als jede Kritik. Hier ist seine Reaktion auf den Fehler 5644 .


    Der Defekt selbst.


    # mkdir -p /foo/dir{1,2}
    # touch /foo/.bar{1,2}
    # cat /etc/tmpfiles.d/test.conf
    R! /foo/.* - - - - -
    Reboot.

    Kommentar Lennart Pottering.


    Ich bin mir nicht sicher, ob ich so viel als Problem betrachten würde. Ja, es ist eine UNIX-Fallstricke, aber "rm -rf /foo/.*" .

    Dies ist kein Einzelfall, denn eine solche Art der Kommunikation hat ihn mit der Umgebung der Geeks nicht bekannt gemacht. Und dies ist nur ein Teil der Ansprüche an systemd und seinen Urheber. Das System kann aufgrund seines Umfangs, seines Umfangs und seiner Komplexität als SI - seine Hauptfunktion - fragil sein.


    Angenommen, systemd übertrifft alle wichtigen SI in seinen Fähigkeiten, aber die Frage bleibt bestehen. Warum haben gewöhnliche localhost-Administratoren nicht die Möglichkeit, sich für Debian-Linux und andere Distributionen zu entscheiden, die von SI einfacher zu bedienen und zu debuggen sind? Denn nicht jeder braucht einen parallelen Start von Prozessen und Quotenmanagement.


    Ich verstehe die Situation unter systemd so, dass ein perfekteres, aber gleichzeitig für viele, unzumutbar komplexes und undurchsichtiges SI denjenigen auferlegt wurde, die es brauchten, und denjenigen, die dies nicht taten . Viele Linux-Benutzer mochten dies nicht und beklagten sich darüber, dass Linux inzwischen wie Windows geworden ist, jedoch nur mit Open Source.


    DnD kooperieren bei sysvinit


    Und nun endlich die gute Nachricht! Vor kurzem gab es Verschiebungen zwischen den Entwicklungsteams von Debian und Devuan CI. Es wurde beschlossen, die Anstrengungen in mehreren Richtungen zu kombinieren.


    • Halten Sie flott sysvinit für diejenigen bereit, die bereit sind, Debian Linux mit allen Einschränkungen zu verwenden, auch ohne eine grafische Umgebung. Devuans Hilfe ist erforderlich, um die 10. Version von Debian, genannt Buster, vorzubereiten .
    • Als Ergebnis dieser " gegenseitigen Bestäubung" halfen Debian-Benutzer ihren Kollegen bei Devuan bei der Vorbereitung der Veröffentlichung von sysvinit 2.92 . Aus diesem Grund wurde der Zeitplan reduziert und die Ausgabe fand vor NG statt, wie zu Beginn des Beitrags gesagt wurde.

    Wenn die gesunde Menschenverstand beiden Gruppen von Entwicklern herrscht in der Lage sein , ein relevanten für alle Nutzer von Debian / Devuan Ziel zu liefern und zu implementieren - volle Unterstützung mehrerer SI für Devuan Linux zu erreichen: openrc, s6, runit, nosh.., etc. Ebenso Debian Linux volle Unterstützung für mindestens einen anderen Von Systemd würde die SI zweifellos profitieren.


    PS In Amsderdam vom 5. bis 7. April 2019 wird die erste Devuan Linux Konferenz abgehalten .


    Zusätzliche Lektüre



    Jetzt auch beliebt: