GNOME se ha adaptado para su gestión a través de systemd

Benjamin Berg (Benjamin Berg), uno de los ingenieros de Red Hat que trabaja en el desarrollo de GNOME, resumió los resultados del trabajo de traducción de GNOME a la gestión de sesiones exclusivamente con systemd, sin el uso del proceso gnome-session.

Para la gestión de acceso en GNOME se utiliza desde hace tiempo systemd-logind, que supervisa el estado de las sesiones vinculadas al usuario, gestiona los identificadores de sesión, se encarga de cambiar entre sesiones activas, coordina entornos multiplataforma (Multi-seat), configura políticas de acceso a dispositivos, proporciona medios para apagar y suspender, entre otros.

Sin embargo, parte de la funcionalidad relacionada con las sesiones seguía siendo gestionada por el proceso gnome-session, que se ocupaba de la gestión a través de D-Bus, el inicio del gestor de pantalla y los componentes de GNOME, y de organizar el autolanzamiento de las aplicaciones especificadas por el usuario. En el desarrollo de GNOME 3.34, las funcionalidades específicas de gnome-session se han convertido en archivos unit para systemd, ejecutados en modo «systemd --user», es decir, vinculados al entorno de un usuario específico en lugar de al sistema completo. Los cambios ya se han aplicado en la distribución Fedora 31, cuya lanzamiento se espera a finales de octubre.

El uso de systemd ha permitido organizar el lanzamiento de controladores bajo demanda o al ocurrir ciertos eventos, así como reaccionar de manera más elaborada a cierres de procesos prematuros debido a fallos y manejar extensivamente las dependencias al iniciar componentes de GNOME. Como resultado, se puede reducir el número de procesos siempre en ejecución y disminuir el consumo de memoria. Por ejemplo, XWayland ahora puede iniciarse solo cuando se intenta ejecutar una aplicación basada en el protocolo X11, y los componentes específicos de hardware solo se inician cuando dicho hardware está presente (por ejemplo, los controladores para tarjetas inteligentes se iniciarán al insertar la tarjeta y finalizarán al retirarla).

Los usuarios ahora cuentan con herramientas más flexibles para gestionar el inicio de servicios; por ejemplo, para desactivar el gestor de teclas multimedia, basta con ejecutar «systemctl —user stop gsd-media-keys.target». En caso de problemas, los registros relacionados con cada gestor pueden ser revisados con el comando journalctl (por ejemplo, «journalctl —user -u gsd-media-keys.service»), habilitando previamente la gestión de registros de depuración en el servicio («Environment=G_MESSAGES_DEBUG=all»). También se ha añadido la posibilidad de ejecutar en entornos aislados tipo sandbox todos los componentes de GNOME, que requieren requisitos de seguridad más elevados.

Para suavizar la transición, se mantendrá el antiguo método para el inicio de procesos está previsto durante varios ciclos de desarrollo de GNOME. Posteriormente, los desarrolladores revisarán el estado de gnome-session y es probable (marcado como «likely») que eliminen de él los medios para iniciar procesos y gestionar el API de D-Bus. Luego, la aplicación de «systemd —user» será convertida en una función obligatoria, lo que podría generar dificultades para sistemas sin systemd y requerirá la preparación de una solución alternativa, como fue en su momento con systemd-logind. Sin embargo, durante su presentación en la conferencia GUADEC 2019, Benjamin Berg mencionó la intención de mantener el soporte para el antiguo método de inicio en sistemas sin systemd, pero esta información contradice los planes actuales para la página del proyecto.

Reproducir video

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster