GNOME je prispôsobené na spravovanie cez systemd

Benjamin Berg (Benjamin Berg), jeden z inžinierov Red Hat zapojených do vývoja GNOME, zovšeobecnené výsledky práce na prechode GNOME na správu relácií výlučne pomocou systemd, bez použitia procesu gnome-session.

Používa sa už nejaký čas na ovládanie prihlasovania do GNOME. systemd-logind, ktorá sleduje stavy relácie špecifické pre používateľa, spravuje identifikátory relácie, zodpovedá za prepínanie medzi aktívnymi reláciami, koordinuje prostredia s viacerými sedadlami, konfiguruje politiky prístupu k zariadeniam, poskytuje nástroje na vypnutie a prechod do režimu spánku atď.

Zároveň časť funkcionality súvisiacej s reláciou zostala na pleciach procesu gnome-session, ktorý bol zodpovedný za správu cez D-Bus, spustenie správcu displeja a komponentov GNOME a organizáciu automatického spustenia používateľom špecifikovaných aplikácií. . Počas vývoja GNOME 3.34 sú funkcie špecifické pre gnome zabalené ako jednotkové súbory pre systemd, spúšťané v režime „systemd —user“, t.j. vo vzťahu k prostrediu konkrétneho používateľa, a nie celého systému. Zmeny už boli implementované v distribúcii Fedora 31, ktorej vydanie sa očakáva koncom októbra.

Použitie systemd umožnilo organizovať spúšťanie obslužných programov na požiadanie alebo pri výskyte určitých udalostí, ako aj sofistikovanejšie reagovať na predčasné ukončenie procesov v dôsledku porúch a rozsiahle riešiť závislosti pri spúšťaní komponentov GNOME. Vďaka tomu môžete znížiť počet neustále spustených procesov a znížiť spotrebu pamäte. Napríklad XWayland je teraz možné spustiť len pri pokuse o spustenie aplikácie založenej na protokole X11 a hardvérovo špecifické komponenty je možné spustiť len vtedy, ak je takýto hardvér prítomný (napríklad obslužné programy pre čipové karty sa spustia po vložení karty a ukončí sa, keď sa odstráni).

Pre používateľa sa objavili flexibilnejšie nástroje na riadenie spúšťania služieb, napríklad na vypnutie obsluhy multimediálnych kľúčov bude stačiť spustiť „systemctl -user stop gsd-media-keys.target“. V prípade problémov je možné zobraziť protokoly priradené ku každému obslužnému programu pomocou príkazu journalctl (napríklad „journalctl —user -u gsd-media-keys.service“), ktorý predtým povolil protokolovanie ladenia v službe („Environment= G_MESSAGES_DEBUG=všetky”). Všetky komponenty GNOME je tiež možné spustiť v izolovaných prostrediach sandbox, na ktoré sa vzťahujú zvýšené bezpečnostné požiadavky.

Pre hladký prechod podpora starého spôsobu spúšťania procesov je plánované pretrvávajú počas viacerých vývojových cyklov GNOME. Ďalej vývojári skontrolujú stav relácie gnome a s najväčšou pravdepodobnosťou (označené ako „pravdepodobné“) z nej odstránia nástroje na spúšťanie procesov a údržbu D-Bus API. Potom bude použitie "systemd -user" odsunuté do kategórie povinných funkcií, čo môže spôsobiť ťažkosti pre systémy bez systemd a bude vyžadovať prípravu alternatívneho riešenia, ako to bolo kedysi systemd-logind. Benjamin Berg však vo svojom prejave na GUADEC 2019 spomenul zámer zachovať podporu starej spúšťacej metódy pre systémy bez systemd, no táto informácia je v rozpore s plánmi na stránka projektu.

Zdroj: opennet.ru

Pridať komentár