GNOME prilagođen za sistemsko upravljanje

Benjamin Berg (Benjamin Berg), jedan od Red Hat inženjera uključenih u razvoj GNOME-a, sažeto rezultati rada na prelasku GNOME-a na upravljanje sesijama isključivo preko systemd-a, bez korištenja gnome-session procesa.

GNOME upravljanje prijavom se koristi već duže vrijeme. systemd-logind, koji prati stanja sesije u odnosu na korisnika, upravlja ID-ovima sesije, odgovoran je za prebacivanje između aktivnih sesija, koordinira višekorisnička okruženja (Multi-seat), konfiguriše politike pristupa uređaju, obezbeđuje sredstva za isključivanje i odlazak u stanje mirovanja, itd. .

U isto vrijeme, dio funkcionalnosti vezanih za sesiju ostao je na plećima gnome-session procesa, koji je bio odgovoran za upravljanje preko D-Bus-a, pokretanje display managera i GNOME komponenti, organiziranje automatskog pokretanja korisnički specificiranih aplikacija. Tokom razvoja GNOME-a 3.34, karakteristike specifične za gnome-session bile su upakovane kao jedinične datoteke za systemd za pokretanje u "systemd --user" modu, tj. u odnosu na okruženje određenog korisnika, a ne čitav sistem. Promjene su već primijenjene u distribuciji Fedora 31, za koju se očekuje da će biti objavljena krajem oktobra.

Upotreba systemd-a omogućila je organizovanje pokretanja rukovaoca na zahtev ili po nastanku određenih događaja, kao i sofisticiraniji odgovor na prerano okončanje procesa usled kvarova, kao i ekstenzivno rukovanje zavisnostima pri pokretanju GNOME komponenti. Kao rezultat toga, možete smanjiti broj procesa koji se stalno izvršavaju i smanjiti potrošnju memorije. Na primjer, XWayland se sada može pokrenuti samo kada pokušavate pokrenuti aplikaciju zasnovanu na X11 protokolu i komponentama specifičnim za hardver, samo s takvim hardverom (na primjer, rukovaoci za pametne kartice će se pokrenuti kada se kartica umetne i prekinuti kada uklanja se).

Za korisnika su se pojavili fleksibilniji alati za upravljanje pokretanjem servisa, na primjer, da bi se onemogućio rukovalac medijskim ključevima, biće dovoljno izvršiti “systemctl –user stop gsd-media-keys.target”. U slučaju problema, evidencije povezane sa svakim rukovaocem mogu se pregledati pomoću naredbe journalctl (na primjer, "journalctl -user -u gsd-media-keys.service"), nakon omogućavanja debug logiranja u servisu ("Environment=G_MESSAGES_DEBUG =sve"). Takođe je postalo moguće pokrenuti sve GNOME komponente u izolovanim okruženjima sandbox-a, koja su podložna povećanim sigurnosnim zahtjevima.

Da biste izgladili tranziciju, podrška za stari način pokretanja procesa planirano sačuvati u više GNOME razvojnih ciklusa. Zatim će programeri pregledati stanje gnome-sesije i najvjerovatnije (označeno kao "vjerovatno") ukloniti pokretače procesa i održavače D-Bus API-ja iz njega. Tada će upotreba "systemd --user" biti premještena u kategoriju obaveznih funkcija, što može stvoriti poteškoće za sisteme bez systemd-a i zahtijevati pripremu alternativnog rješenja, kao što je to nekada učinjeno sa systemd-logind. Međutim, u svom izlaganju za GUADEC 2019, Benjamin Berg je spomenuo svoju namjeru da zadrži podršku za staru metodu pokretanja za sisteme bez systemd-a, ali ove informacije su u suprotnosti s planovima za stranica projekta.

izvor: opennet.ru

Dodajte komentar