El gestor de sistemas systemd 258 está disponible

Después de nueve meses de desarrollo, se presenta la versión del gestor de sistemas systemd 258. Cambios clave: se ha dejado de dar soporte a cgroups v1 y a componentes de gestión del sistema al estilo System V, nuevas utilidades systemd-factory-reset y systemd-pty-forward, concepto de áreas de inicio, soporte para el arranque desde una imagen de disco obtenida a través de HTTP.

Entre los cambios en la nueva versión:

  • Se ha añadido la utilidad systemd-factory-reset para iniciar o cancelar un restablecimiento a los valores de fábrica durante el próximo arranque. Se ha añadido la unidad factory-reset-now.target para un restablecimiento instantáneo. Para el restablecimiento durante el arranque, se ha añadido el parámetro de línea de comandos del núcleo «systemd.factory_reset».
  • Se ha añadido el concepto de áreas de inicio (home area), que permite establecer subdirectorios dentro del directorio principal del hogar ($HOME), a los que el usuario puede acceder por separado para trabajar en diferentes espacios de trabajo. Por ejemplo, se pueden crear áreas separadas para un usuario para probar configuraciones y para desarrollo (~\/Areas\/foo y ~\/Areas\/bar). Para acceder a un área adicional al iniciar sesión, se debe especificar el nombre del área en el inicio de sesión, separándolo con el símbolo «%» («username%foo») o utilizar la utilidad run0 con la opción «—area». El soporte para áreas de inicio actualmente solo está implementado en systemd-homed y no está disponible para sesiones gráficas completas.
  • Se han añadido los parámetros de línea de comandos del núcleo «systemd.pull» y «rd.systemd.pull», que se aplican para la carga automática máquinas virtuales, de contenedores o imágenes de extensión (sysext, confext), se ha añadido la bandera «blockdev». Al especificar esta bandera, la imagen cargada se adjunta a un dispositivo loopback, lo que permite arrancar directamente desde una imagen de disco obtenida a través de HTTP. Por ejemplo: rd.systemd.pull=raw,machine,verify=no,blockdev:image:https://192.168.100.1:8081/image.raw \ root=\/dev\/disk\/by-loop-ref\/image.raw-part2
  • Se ha añadido la utilidad systemd-pty-forward que permite crear un pseudo terminal («PTY») y ejecutar un proceso en él, redirigiendo cualquier salida al terminal original en el que se ejecutó la utilidad.
  • Se ha eliminado el código que proporcionaba soporte para cgroups v1.
  • Se han eliminado los componentes de gestión del sistema al estilo System V, tales como las utilidades itctl, runlevel y telinit, el dispositivo /dev/initctl, el concepto de niveles de ejecución (runlevel), los archivos de unidad runlevel[0-6].target y la posibilidad de gestionar el estado a través del comando init. La eliminación del soporte para scripts de servicios de System V está prevista para la próxima versión.
  • Los requisitos mínimos para la versión del núcleo de Linux se han elevado a la versión 5.4 (se recomienda la versión 5.7).
  • Los permisos de acceso a los dispositivos tty/pts han cambiado de 0620 (-rw—w—-) a 0600 (-rw——-) para prohibir la escritura en la terminal de otros usuarios de la misma grupo. Para restaurar el comportamiento anterior al compilar, se puede usar la opción ‘-Dtty-mode=0620’.
  • En systemd-resolved y systemd-importd se ha dejado de dar soporte a las bibliotecas GnuTLS y libgcrypt, dejando como único backend criptográfico a OpenSSL.
  • Se ha agregado soporte para la condición ‘ConditionKernelModuleLoaded’ en los archivos unit para verificar la carga de un módulo específico del núcleo. La condición ‘ConditionKernelVersion’ ha sido reemplazada por una construcciones más generales ‘ConditionVersion’, a través de la cual se pueden verificar además de la versión del núcleo, las versiones de systemd y glibc.
  • Se ha habilitado el soporte para cuotas de usuario en la partición /tmp/, que está alojada en tmpfs, y para /dev/shm/.
  • Para los units de tipo slice, utilizados para dividir el sistema en partes (app.slice, background.slice, session.slice) con el objetivo de aislar recursos entre diferentes servicios de usuario, se han implementado las configuraciones ConcurrencySoftMax y ConcurrencyHardMax para gestionar el número de units activas simultáneamente. Las nuevas características pueden usarse como un mecanismo para gestionar la ejecución de trabajos teniendo en cuenta el consumo de recursos, que soporta grupos jerárquicos de trabajos.
  • Se ha añadido soporte en la configuración ExecStart para el prefijo ‘|’, que define la ejecución a través de un intérprete de comandos.
  • Se ha implementado una API basada en el protocolo Varlink, que puede ser utilizada para determinar el estado actual, la lista de units y el estado de las units.
  • Se ha añadido un directorio adicional con preconfiguraciones (‘preset’) para los servicios del sistema que se ejecutan en initrd, permitiendo diferenciar la activación de los servicios del sistema para el host y initrd.
  • Se ha añadido la opción de vincular cuotas a servicios individuales utilizando las configuraciones StateDirectoryQuota, StateDirectoryAccounting, CacheDirectoryQuota, CacheDirectoryAccounting, LogsDirectoryQuota y LogsDirectoryAccounting.
  • Se ha añadido soporte para las propiedades ID_NET_BRING_UP_BEFORE_JOINING_BRIDGE, ID_NET_NAME_INCLUDE_DOMAIN, ID_AV_LIGHTS en systemd-udevd. Se ha añadido el parámetro de construcción del núcleo «udev.trace» y la opción «--traceu» en la utilidad devadm para rastrear la lógica de udev durante el arranque y durante la operación. Se ha añadido el comando «cat» en la utilidad udevadm para mostrar el contenido de los archivos de reglas instalados. Se ha garantizado la etiquetación automática de interfaces USB de depuración de Android (ADB DbC, ADB, Fastboot) para el acceso de usuarios no privilegiados.
  • Se han añadido en systemd-networkd las configuraciones IPv4DuplicateAddressDetectionTimeoutSec, UseSIP en la sección «[DHCPv6]», MPLSRouting en la sección «[Network]», Preference en la sección «[IPv6RoutePrefix]», LinkLocalLearning, Locked, MACAuthenticationBypass y VLANTunnel en la sección «[Bridge]». Se ha añadido soporte para el protocolo BOOTP en el cliente DHCPv4.
  • Se han añadido nuevas clases de sesión en systemd-logind: «none» para desactivar la creación de sesiones; «user-light» y «user-early-light» para crear sesiones de usuario sin activar el gestor de servicios para el usuario (para sesiones no interactivas).
  • Se ha añadido soporte para zonas delegadas («delegate zone») en systemd-resolved, que permiten enrutar solicitudes DNS para dominios específicos a través de DNS. servidores Se ha garantizado el envío de solicitudes DNS paralelas para registros A y AAAA de un mismo dominio. Se ha añadido la configuración RefuseRecordTypes en resolved.conf para definir los tipos de registros bloqueados, por ejemplo, para bloquear registros «A» en hosts solo con IPv6.
  • Se ha añadido la opción «--verbose» al comando «systemctl start» para mostrar el registro de operación de los unidades sobre las que se realiza la operación.
  • Se ha añadido soporte para dos nuevas especificaciones de cargadores en systemd-boot — «uki» y «uki-url». En el segundo caso se ha implementado la posibilidad de cargar una imagen UKI desde un host externo a través del protocolo HTTP. Se ha añadido la capacidad de incrustar imágenes de firmware UEFI en imágenes UKI (Unified Kernel Image). Se ha añadido la configuración «reboot-on-error» en loader.conf para definir las acciones (reiniciar o mostrar el menú de arranque) en caso de error en la posición de arranque seleccionada.
  • Se ha añadido soporte para la ejecución no privilegiada de imágenes de contenedores almacenadas en directorios normales en systemd-nspawn.
  • Se ha añadido soporte para imágenes comprimidas con el algoritmo zstd en systemd-importd (además de .xz, .gz y .bz2).
  • Se han añadido los parámetros de línea de comandos del núcleo «systemd.break» y «rd.systemd.break», que permiten insertar puntos de parada interactivos que interrumpen el arranque en momentos específicos. Hay cuatro puntos de parada disponibles: «pre-udev», «pre-basic», «pre-mount» y «pre-switch-root».
  • En la próxima versión está previsto el cese del soporte para el directorio /run/lock/ y el filtro de paquetes iptables (en systemd-networkd y systemd-nspawn solo se mantendrá el soporte para nftables). También se prevén requisitos mínimos más altos: núcleo Linux 5.10, glibc 2.34, openssl 3.0.0, python 3.9.0.

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