A GNOME úgy lett kialakítva, hogy a systemd-n keresztül kezelhető legyen

Benjamin Berg (Benjamin Berg), a Red Hat egyik mérnöke, aki részt vett a GNOME fejlesztésében, összefoglalva a GNOME munkamenet-kezelésre való áttérésén végzett munka eredményei, kizárólag systemd használatával, a gnome-session folyamat használata nélkül.

Jó ideje használják a GNOME-ba való bejelentkezés szabályozására. systemd-logind, amely nyomon követi a felhasználó-specifikus munkamenet-állapotokat, kezeli a munkamenet-azonosítókat, felelős az aktív munkamenetek közötti váltásért, koordinálja a többüléses környezeteket, konfigurálja az eszközök hozzáférési házirendjeit, eszközöket biztosít a leállításhoz és alvó állapotba lépéshez stb.

Ugyanakkor a munkamenetekhez kapcsolódó funkciók egy része a gnome-session folyamat vállán maradt, amely a D-buszon keresztüli menedzsmentért, a kijelzőkezelő és a GNOME komponensek elindításáért, valamint a felhasználó által megadott alkalmazások automatikus futtatásának megszervezéséért volt felelős. . A GNOME 3.34 fejlesztése során a gnome-munkamenet-specifikus szolgáltatásokat a systemd egységfájljaiba csomagolják, amelyek „systemd —user” módban futnak, azaz. egy adott felhasználó környezetéhez, és nem az egész rendszerhez. A változtatásokat már végrehajtották a Fedora 31 disztribúcióban, amely várhatóan október végén jelenik meg.

A systemd használata lehetővé tette a kezelők igény szerinti indítását, vagy bizonyos események bekövetkeztekor, valamint a folyamatok meghibásodások miatti idő előtti leállítására való kifinomultabb reagálást és a függőségek széles körű kezelését a GNOME komponensek indításakor. Ennek eredményeként csökkenthető a folyamatosan futó folyamatok száma és csökkenthető a memóriafelhasználás. Például az XWayland már csak akkor indítható el, ha egy X11 protokollon alapuló alkalmazást próbálunk futtatni, és a hardver-specifikus komponensek csak akkor indíthatók el, ha ilyen hardver jelen van (például az intelligens kártyák kezelői elindulnak a kártya behelyezésekor és megszűnik, amikor eltávolítják).

Rugalmasabb eszközök jelentek meg a felhasználók számára a szolgáltatások indításának kezelésére, például a multimédiás kulcskezelő letiltásához elegendő a „systemctl -user stop gsd-media-keys.target” parancs végrehajtása. Probléma esetén az egyes kezelőkhöz tartozó naplók a journalctl paranccsal tekinthetők meg (például „journalctl —user -u gsd-media-keys.service”), miután korábban engedélyezte a hibakeresési naplózást a szolgáltatásban („Environment= G_MESSAGES_DEBUG=minden”). Lehetőség van az összes GNOME-összetevő futtatására izolált sandbox-környezetekben is, amelyekre fokozott biztonsági követelmények vonatkoznak.

Az átmenet gördülékenyebbé tétele érdekében a folyamatok futtatásának régi módjának támogatása a tervek szerint több GNOME fejlesztési cikluson keresztül is megmarad. Ezután a fejlesztők felülvizsgálják a gnome-session állapotát, és valószínűleg ("valószínűnek" jelölve) eltávolítják belőle a folyamatok indításához és a D-Bus API karbantartásához szükséges eszközöket. Ekkor a "systemd -user" használata visszaszorul a kötelező funkciók kategóriájába, ami nehézségeket okozhat a systemd nélküli rendszerek számára, és alternatív megoldás elkészítését teszi szükségessé, ahogy az egykoron történt. systemd-logind. Benjamin Berg azonban a GUADEC 2019-en tartott beszédében megemlítette azt a szándékot, hogy fenntartsák a régi indítási módszer támogatását a rendszer nélküli rendszerek esetében, de ez az információ ellentmond a projekt oldala.

Forrás: opennet.ru

Hozzászólás