GNOME ir pielāgots pārvaldīšanai, izmantojot systemd

Bendžamins Bergs (Bendžamins Bergs), viens no Red Hat inženieriem, kas iesaistīti GNOME izstrādē, vispārināts darba rezultāti, pārejot GNOME uz sesiju pārvaldību, izmantojot tikai systemd, neizmantojot gnome sesijas procesu.

Tas ir izmantots diezgan ilgu laiku, lai kontrolētu pieteikšanos GNOME. systemd-logind, kas izseko lietotājam raksturīgus sesiju stāvokļus, pārvalda sesiju identifikatorus, ir atbildīgs par pārslēgšanos starp aktīvajām sesijām, koordinē vairāku sēdvietu vidi, konfigurē ierīču piekļuves politikas, nodrošina rīkus izslēgšanai un pāriešanai miega režīmā utt.

Tajā pašā laikā daļa ar sesiju saistītās funkcionalitātes palika uz gnome-session procesa pleciem, kas bija atbildīgs par pārvaldību, izmantojot D-Bus, displeja pārvaldnieka un GNOME komponentu palaišanu un lietotāja norādīto lietojumprogrammu automātiskās palaišanas organizēšanu. . GNOME 3.34 izstrādes laikā gnome sesijām raksturīgie līdzekļi tiek iesaiņoti kā systemd vienības faili, kas tiek izpildīti režīmā “systemd —user”, t.i. attiecībā uz konkrēta lietotāja vidi, nevis visu sistēmu. Izmaiņas jau ir ieviestas Fedora 31 izplatīšanā, kuru paredzēts izlaist oktobra beigās.

Systemd izmantošana ļāva organizēt apdarinātāju palaišanu pēc pieprasījuma vai noteiktu notikumu gadījumā, kā arī sarežģītāk reaģēt uz priekšlaicīgu procesu pārtraukšanu kļūmju dēļ un plaši apstrādāt atkarības, startējot GNOME komponentus. Tā rezultātā jūs varat samazināt pastāvīgi darbojošos procesu skaitu un samazināt atmiņas patēriņu. Piemēram, XWayland tagad var palaist tikai, mēģinot palaist lietojumprogrammu, kuras pamatā ir X11 protokols, un aparatūrai specifiskus komponentus var palaist tikai tad, ja šāda aparatūra ir klāt (piemēram, viedkaršu apstrādātāji tiks startēti, kad karte tiks ievietota un beidzas, kad tas tiek noņemts).

Lietotājam ir parādījušies elastīgāki rīki pakalpojumu palaišanas pārvaldībai, piemēram, lai atspējotu multivides atslēgu apstrādātāju, pietiks ar “systemctl -user stop gsd-media-keys.target” izpildi. Problēmu gadījumā ar katru apdarinātāju saistītos žurnālus var skatīt ar komandu journalctl (piemēram, “journalctl —user -u gsd-media-keys.service”), iepriekš pakalpojumā iespējotu atkļūdošanas reģistrēšanu (“Environment= G_MESSAGES_DEBUG=viss”). Ir iespējams arī palaist visus GNOME komponentus izolētās smilškastes vidēs, uz kurām attiecas paaugstinātas drošības prasības.

Lai izlīdzinātu pāreju, atbalsts vecajam procesu vadīšanas veidam ir plānots pastāv vairākos GNOME izstrādes ciklos. Pēc tam izstrādātāji pārskatīs gnome sesijas stāvokli un, visticamāk (atzīmēts kā “iespējams”), no tā noņems rīkus procesu palaišanai un D-Bus API uzturēšanai. Tad "systemd -user" lietošana tiks novirzīta uz obligāto funkciju kategoriju, kas var radīt grūtības sistēmām bez systemd un prasīs alternatīva risinājuma sagatavošanu, kā tas bija kādreiz systemd-logind. Tomēr savā runā GUADEC 2019 Bendžamins Bergs minēja nodomu saglabāt atbalstu vecajai startēšanas metodei sistēmām bez systemd, taču šī informācija ir pretrunā ar plāniem projekta lapa.

Avots: opennet.ru

Pievieno komentāru