Debian keert terug naar ondersteuning voor meerdere init-systemen

Sam Hartman, Debian-projectleider, geprobeerd om de meningsverschillen te begrijpen die verband houden met de levering van het elogind-pakket als onderdeel van de distributie. In juli is het team verantwoordelijk voor het voorbereiden van releases geblokkeerd opname van elogind in de testvertakking, omdat dit pakket conflicteert met libsystemd.

Bedenk dat verzin biedt de interfaces die nodig zijn om GNOME uit te voeren zonder systemd te installeren. Het project is opgericht als een fork van systemd-logind, in een apart pakket geplaatst en bevrijd van binding aan systemd-componenten. elogind biedt onder andere een eigen versie van de libelogind-bibliotheek, die een aantal functies overneemt die in libsystemd worden aangeboden en deze bibliotheek tijdens de installatie vervangt.

De redenen voor het blokkeren waren een conflict met het systemd-pakket en het gevaar van het vervangen van libsystemd door een alternatief libelogind, dat volledig incompatibel is met de bronbibliotheek op ABI-niveau.
Het pakket bestempelt elogind als conflicterend met systemd-bibliotheken, maar het is inherent ontworpen om alleen te werken zonder systemd, en conflicteren met systemd is eigenlijk gunstig omdat het voorkomt dat elogind per ongeluk wordt geïnstalleerd. Aan de andere kant, in zijn huidige vorm, resulteren pogingen via APT om de configuratie bij te werken van systemd naar de versie met sysvinit en elogind in beschadigd systeem terwijl APT niet werkt. Maar zelfs als deze tekortkoming wordt geëlimineerd, blijft de overgang van systemd naar elogind onmogelijk zonder reeds geïnstalleerde gebruikersomgevingen te verwijderen.

De elogind-ontwikkelaars waren dat wel voorgesteld pas elogind aan om bovenop de standaard libpam-systemd te werken, zonder zijn eigen libpam-elogind-laag te gebruiken. De overgang van elogind naar libpam-systemd wordt belemmerd door het gebrek aan ondersteuning voor het concept van slice, maar de ontwikkelaars van elogind willen geen volledige naleving van de API bereiken en alle mogelijkheden van systemd exact herhalen, aangezien elogind slechts minimale mogelijkheden biedt. functionaliteit voor het organiseren van gebruikersaanmeldingen en heeft niet tot doel alle systeemsubsystemen te repliceren.

Het oplossen van de beschreven technische problemen zou moeten worden opgelost op het niveau van de interactie tussen het releaseteam en de elogind- en systemd-onderhouders, maar de projectleider werd gedwongen in te grijpen omdat de teams het niet eens konden worden, het gezamenlijke werk zich ontwikkelde tot confrontatie en de oplossing voor het probleem Het probleem liep op een dood spoor, waarin elke partij op zijn eigen manier gelijk had. Volgens Sam Hartman nadert de situatie een staat die een algemene stemming vereist (GR, algemene resolutie), waarin de gemeenschap zal beslissen over alternatieve systemen voor init en ondersteuning voor sysvinit met elogind.

Als projectleden stemmen om de init-systemen te diversifiëren, zullen alle beheerders worden betrokken bij het samenwerken om dit probleem op te lossen, of zullen specifieke ontwikkelaars worden toegewezen om aan dit probleem te werken en zullen beheerders niet langer in staat zijn een alternatief init-systeem te negeren, te zwijgen, of vertragen het proces.

Staat momenteel al in de repository geaccumuleerd 1033-pakketten die service-eenheden voor systemd bieden, maar geen init.d-scripts bevatten. Om dit probleem op te lossen aangeboden leveren standaard servicebestanden, maar bereiden een handler voor die automatisch opdrachten uit deze bestanden analyseert en op basis daarvan init.d-scripts genereert.

Als de gemeenschap besluit dat Debian voldoende ondersteuning heeft voor één enkel init-systeem, kunnen we ons niet langer zorgen maken over sysvinit en elogind en ons alleen concentreren op unit-bestanden en systemd. Deze beslissing zal een negatieve impact hebben op poorten die de Linux-kernel niet gebruiken (Debian GNU / Hurd, Debian GNU / NetBSD и Debian GNU / kFreeBSD), maar er zijn nog geen dergelijke poorten in het hoofdarchief en ze hebben niet de status officieel ondersteund.

Het binden aan systemd zal het ook veel moeilijker maken om de richting van de distributie in de toekomst te veranderen en zal verdere experimenten op het gebied van initialisatie en servicemanagement beperken. Het in werkende vorm houden van elogin is veel gemakkelijker dan het verwijderen en vervolgens opnieuw proberen toe te voegen. Elke beslissingsoptie heeft voor- en nadelen, dus een volledige bespreking van alle voor- en nadelen is vereist voordat er wordt gestemd.

Bron: opennet.ru

Voeg een reactie