Debian se vraća podršci za višestruke init sisteme

Sam Hartman, vođa Debian projekta, pokušao razumjeti nesuglasice povezane s isporukom elogind paketa kao dijela distribucije. U julu je tim zadužen za pripremu izdanja blokiran uključivanje eloginda u granu za testiranje, pošto je ovaj paket u sukobu sa libsystemd.

Sjetite se toga elogind pruža interfejse potrebne za pokretanje GNOME-a bez instaliranja systemd-a. Projekat je osnovan kao fork systemd-logind, smešten u poseban paket i oslobođen od vezivanja za systemd komponente. Između ostalog, elogind obezbeđuje sopstvenu verziju biblioteke libelogind, koja preuzima brojne funkcije ponuđene u libsystemd-u i zamenjuje ovu biblioteku tokom instalacije.

Razlozi za blokiranje bili su sukob sa systemd paketom i opasnost od zamjene libsystemd alternativnim libelogind-om, koji je potpuno nekompatibilan sa izvornom bibliotekom na ABI nivou.
Paket označava elogind kao konfliktan sa systemd bibliotekama, ali je inherentno dizajniran da radi samo bez systemd-a, a sukob sa systemd je zapravo koristan jer sprečava da se elogind instalira greškom. S druge strane, u svom trenutnom obliku, pokušaji preko APT-a da ažuriraju konfiguraciju sa systemd na verziju sa sysvinit i elogind rezultiraju oštećen sistem sa APT ne radi. Ali čak i ako se ovaj nedostatak otkloni, prijelaz sa systemd na elogind ostaje nemoguć bez brisanja već instaliranih korisničkih okruženja.

Elogind programeri su bili predloženo prilagodi elogind da radi na vrhu standardnog libpam-systemd, bez korištenja vlastitog libpam-elogind sloja. Prelazak elogind-a na libpam-systemd otežava nedostatak podrške za koncept rezova, ali programeri elogind-a ne žele postići punu usklađenost sa API-jem i tačno ponoviti sve mogućnosti systemd-a, budući da elogind pruža samo minimalno funkcionalnost za organiziranje korisničkih prijava i nema za cilj repliciranje svih systemd podsistema.

Rješavanje opisanih tehničkih problema trebalo bi rješavati na nivou interakcije između tima za izdavanje i elogin i systemd održavatelja, ali je voditelj projekta bio primoran da interveniše jer se timovi nisu mogli dogovoriti, zajednički rad je prerastao u sukob i rješenje za problem je došao u ćorsokak, u kojem je svaka strana bila u pravu na svoj način. Prema Samu Hartmanu, situacija se približava stanju koje zahtijeva opštu rezoluciju (GR), u kojoj će zajednica odlučiti o alternativnim sistemima za init i podršku za sysvinit sa elogindom.

Ako članovi projekta glasaju za diversifikaciju init sistema, svi održavaoci će biti uključeni u zajednički rad na rješavanju ovog problema ili će određeni programeri biti dodijeljeni da rade na ovom pitanju i održavaoci više neće moći ignorirati alternativni sistem init, šutjeti ili odgoditi proces.

Trenutno je već u spremištu akumulirano 1033 paketa koji pružaju servisne jedinice za systemd, ali ne uključuju init.d skripte. Za rješavanje ovog problema ponuđeno dostavite servisne datoteke po defaultu, ali pripremite rukovalac koji će automatski raščlaniti komande iz ovih datoteka i generirati init.d skripte na osnovu njih.

Ako zajednica odluči da Debian ima dovoljno podrške za jedan init sustav, više ne možemo brinuti o sysvinit i eloginit i fokusirati se samo na datoteke jedinica i systemd. Ova odluka će negativno utjecati na portove koji ne koriste Linux kernel (Debian GNU / Hurd, Debian GNU / NetBSD и Debian GNU / kFreeBSD), ali takvih portova još nema u glavnoj arhivi i nemaju status zvanično podržana.

Vezivanje za systemd će takođe otežati promenu pravca distribucije u budućnosti i ograničiće dalje eksperimentisanje u polju inicijalizacije i upravljanja uslugama. Održavanje eloginda u radnom obliku je mnogo lakše nego da ga izbrišete i pokušate ponovo dodati. Svaka opcija odluke ima svoje prednosti i nedostatke, tako da će prije glasanja biti potrebna potpuna rasprava o svim prednostima i nedostacima.

izvor: opennet.ru

Dodajte komentar