Desde Linux Darkcrizt  

Systemd 258: novedades, cambios clave y el adiós definitivo a cgroups v1

systemd

Después de nueve meses de trabajo, ha llegado systemd 258, la nueva versión del administrador de sistemas que marca paso importante al dejar atrás componentes históricos y avanzar hacia un ecosistema más moderno.

Este lanzamiento destaca por la eliminación de la compatibilidad con cgroups v1 y con los viejos mecanismos de gestión System V, además de introducir nuevas utilidades, conceptos innovadores y mejoras de seguridad y rendimiento que refuerzan su papel central en Linux.

Principales novedades de Systemd 258

Una de las novedades más relevantes es la introducción de la utilidad systemd-factory-reset, diseñada para iniciar o cancelar un restablecimiento de fábrica en el siguiente arranque, con la posibilidad de ejecutar un reinicio inmediato mediante la unidad factory-reset-now.target. También se incorpora el parámetro del kernel systemd.factory_reset para activar este proceso durante el arranque.

Otra de las novedades que presenta Systemd 258 es el de áreas de inicio, que permite crear subdirectorios dentro del directorio principal de usuario para mantener entornos separados, como pruebas o desarrollo. Estas áreas pueden seleccionarse al iniciar sesión con la sintaxis usuario%área o mediante la utilidad run0. Por ahora, esta funcionalidad se limita a systemd-homed y no está disponible para sesiones gráficas completas.

Arranque remoto y nuevas utilidades

Systemd 258 amplía sus capacidades de arranque al permitir iniciar directamente desde una imagen de disco obtenida mediante HTTP, gracias al indicador blockdev aplicado a los parámetros systemd.pull y rd.systemd.pull. De esta manera, la imagen se conecta a un dispositivo de bucle invertido, lo que habilita un arranque remoto más flexible.

Entre las nuevas herramientas se encuentra systemd-pty-forward, que permite crear pseudo-terminales para ejecutar procesos y redirigir su salida a la terminal original, ampliando las posibilidades de administración y depuración en entornos complejos.

Eliminación de componentes heredados

Este lanzamiento marca también la despedida definitiva de tecnologías obsoletas. Se elimina el soporte para cgroups v1, consolidando el uso exclusivo de cgroups v2 como estándar de administración de recursos en Linux.

Asimismo, se retiran los componentes del estilo System V, incluyendo initctl, runlevel y telinit, junto con el dispositivo /dev/initctl, los archivos de nivel de ejecución y el comando init. Aunque los scripts de servicio de System V todavía funcionan, su eliminación está prevista para una futura versión.

En cuanto a las bibliotecas criptográficas, OpenSSL se establece como el único backend admitido en systemd-resolved y systemd-importd, dejando de lado GnuTLS y libgcrypt.

Mejoras en servicios y configuraciones

Systemd 258 añade la condición ConditionKernelModuleLoaded, que permite verificar si un módulo del kernel está cargado antes de iniciar una unidad. La condición previa ConditionKernelVersion se reemplaza por ConditionVersion, más general, capaz de comprobar también versiones de systemd y glibc.

En el ámbito de red, systemd-udevd incorpora nuevas propiedades para dispositivos, soporte de depuración mejorado y mayor integración con interfaces de Android como ADB y Fastboot. Systemd-networkd, por su parte, añade opciones avanzadas de configuración en IPv4, IPv6 y redes MPLS, además de compatibilidad con BOOTP en el cliente DHCPv4.

Systemd-logind incorpora nuevas clases de sesión para escenarios no interactivos y de inicio rápido, mientras que systemd-resolved añade soporte para zonas delegadas, consultas paralelas A/AAAA y la posibilidad de bloquear tipos de registros DNS.

El gestor de arranque systemd-boot evoluciona con compatibilidad para las especificaciones uki y uki-url, lo que abre la puerta al arranque remoto de imágenes UKI vía HTTP. También se añade la opción reboot-on-error para gestionar fallos durante el arranque.

Novedades en contenedores e importación de imágenes

Systemd-nspawn permite ahora la ejecución sin privilegios de imágenes de contenedores en directorios regulares, mientras que systemd-importd suma compatibilidad con imágenes comprimidas en formato zstd.

Además, se introducen los parámetros del kernel systemd.break y rd.systemd.break, que permiten interrumpir el arranque en puntos clave para depuración interactiva.

Mirando al futuro de systemd

El equipo de desarrollo ya anticipa cambios profundos para la próxima versión, como la eliminación definitiva del directorio /run/lock/ y el abandono de iptables en favor exclusivo de nftables. También se prevé un incremento en los requisitos mínimos, pasando al kernel Linux 5.10, glibc 2.34, OpenSSL 3.0.0 y Python 3.9.

La versión mínima del kernel de Linux requerida para ejecutar systemd 258 ahora es la 5.4, aunque se recomienda la 5.7. Además, se modifica la política de permisos en dispositivos tty/pts, que pasan de 0620 a 0600 para evitar que usuarios del mismo grupo puedan escribir en terminales ajenas, reforzando la seguridad por defecto.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.