El gestor de sistemas systemd 259 está disponible

Después de tres meses de desarrollo, se lanza la versión del gestor de sistemas systemd 259. Cambios clave: soporte para la biblioteca estándar Musl, el comando «run0 —empower» para realizar acciones privilegiadas sin cambiar el UID, carga dinámica de bibliotecas externas requeridas en libsystemd, y la capacidad de ignorar archivos de configuración al agregar «.ignore» al nombre.

Entre los cambios en la nueva versión:

  • Se ha añadido soporte parcial para la biblioteca estándar de C Musl, que se activa estableciendo el valor «musl» en la opción «libc» en el sistema de construcción Meson. Debido a que la biblioteca Musl no proporciona funcionalidad NSS, los componentes nss-systemd, nss-resolve, systemd-homed, systemd-nsresourced, systemd-userdbd, así como la opción DynamicUser y la capacidad de ejecutar systemd-nspawn sin privilegios no están disponibles al compilar systemd con Musl. Los desarrolladores de systemd aún no garantizan que el soporte para Musl se mantenga en futuras versiones. La decisión dependerá del éxito en el desarrollo de la capa que implemente funcionalidad adicional sobre Musl, así como de la demanda del proyecto y los informes de errores específicos de Musl.
  • En la utilidad run0, presentada como un reemplazo seguro para el programa sudo, que funciona sobre systemd-run, se ha añadido la opción «—empower», que permite iniciar una nueva sesión con privilegios elevados sin cambiar al usuario root. La realización de acciones privilegiadas sin cambiar el UID se organiza mediante el establecimiento de flags de capabilities, como CAP_SYS_ADMIN, que son suficientes para acceder a la mayoría de las llamadas al sistema privilegiadas. Los procesos lanzados también se colocan en un grupo separado «empower», al que se le otorga acceso a la mayoría de las acciones de Polkit.
  • Se ha decidido eliminar el soporte para scripts de servicios en formato System V en la próxima versión. Se prevé la eliminación de los componentes systemd-sysv-install, systemd-rc-local-generator y systemd-sysv-generator. En la próxima versión también se prevé aumentar los requisitos para las versiones mínimas: núcleo de Linux 5.10, glibc 2.34, openssl 3.0.0, python 3.9.0, libxcrypt 4.4.0, util-linux 2.37, elfutils 0.177, cryptsetup 2.4.0, libseccomp 2.4.0.
  • En el marco de la iniciativa para reducir dependencias, en libsystemd se implementó la carga dinámica de las bibliotecas libacl, libblkid, libseccomp, libselinux y libmount a través de dlopen() en situaciones donde sus funciones son realmente necesarias. A través de dlopen() también se realizó la integración con el subsistema de auditoría de Linux y con PAM. La funcionalidad que antes se invocaba a través de la biblioteca intermedia libcap ahora está integrada en libsystemd.
  • En systemd-resolved se añadió la posibilidad de adjuntar controladores locales que se llaman con cada solicitud de resolución de nombres locales. Los controladores se colocan en el directorio /run/systemd/resolve.hook/.
  • Se añadió un campo UUID a la base de datos de usuarios, y en la utilidad userdbctl se agregó la opción "--uuid" para buscar por UUID.
  • Se garantiza la ignorancia de los archivos de configuración cuyos nombres terminan en ".ignore".
  • En systemd-importd se implementó una lógica incorporada para trabajar con archivos TAR, utilizando libarchive en lugar de invocar la utilidad GNU tar. Se añadió la posibilidad de ejecutar systemd-machined y systemd-importd vinculados a usuarios, en lugar de a nivel del sistema, cargando imágenes del sistema en ~/.local/state/machines/. Para seleccionar el modo de operación, se añadieron opciones "--user" y "--system" a la utilidad importctl.
  • El modo de almacenamiento de registros por defecto se cambió de 'auto' a 'persistent' (anteriormente, el modo dependía de la existencia del directorio /var/log/journal).
  • En systemd-networkd y systemd-nspawn se dejó de soportar la creación de reglas de traducción de direcciones (NAT) a través de iptables/libiptc. Solo se mantiene el soporte para nftables.
  • En systemd-boot y systemd-stub se dejó de soportar TPM 1.2 (se mantiene el soporte para TPM 2.0).
  • En systemd-machined, por defecto se garantiza el montaje de las imágenes de disco "ocultas" cuyos nombres comienzan con un punto, en modo de solo lectura.
  • Se amplió la API basada en el protocolo Varlink, que ahora se puede utilizar para acceder a la configuración de los servicios. Se implementaron llamadas IPC Reload() y Reexecute(). Se añadieron llamadas para acceder a la funcionalidad y configuración de systemd-repart, systemd-resolved y systemd-networkd.
  • Se añadió la configuración ExecReloadPost, que permite organizar la ejecución de comandos después de reiniciar la configuración del servicio.
  • Para los servicios se implementaron las propiedades OOMKills y ManagedOOMKills, que contienen el número de procesos que fueron terminados por el núcleo o systemd-oomd debido a falta de memoria.
  • Para los servicios temporales se añadió la propiedad RootDirectoryFileDescriptor, que determina el descriptor de archivo del directorio raíz.
  • Se ha añadido la configuración UserNamespacePath, que permite vincular una unidad al espacio de identificadores de usuarios (user namespace) mediante la especificación de una ruta en el pseudo-sistema de archivos /proc, similar a las configuraciones IPCNamespacePath y NetworkNamespacePath. En systemd-nspawn se ha añadido la configuración NamespacePath en la sección [Network] de los archivos .nspawn para especificar el espacio de nombres de red.
  • En systemd-sysext y systemd-confext se ha implementado el soporte para archivos de configuración separados /etc/systemd/systemd-sysext.conf y /etc/systemd/systemd-confext.conf. Se ha añadido la posibilidad de usar la variable de entorno SYSTEMD_SYSEXT_OVERLAYFS_MOUNT_OPTIONS y $SYSTEMD_CONFEXT_OVERLAYFS_MOUNT_OPTIONS para configurar las opciones de montaje de Overlayfs.
  • En systemd-udevd se ha añadido la configuración OPTIONS="dump-json" para mostrar el estado del evento actual en formato JSON. En la función net_id se ha implementado la generación de nombres predecibles para interfaces de red inalámbricas en sistemas con DeviceTree. Se han generado enlaces simbólicos /dev/gpio/by-id/... para dispositivos GPIO.
  • En el comando «homectl update» se ha añadido la opción «—recovery-key» para añadir claves de respaldo a cuentas de usuario existentes (anteriormente, tales claves solo podían añadirse durante la creación de un usuario).
  • En systemd-homed se han añadido las opciones «—prompt-shell» y «—prompt-groups» para la selección interactiva de la shell y grupos durante el primer arranque utilizando el servicio systemd-homed-firstboot.service. En systemd-firstboot se ha añadido la opción «—prompt-keymap-auto» para solicitar la distribución del teclado al trabajar a través de la consola local durante el primer arranque.
  • En systemd-boot se ha añadido la opción de establecer el nivel de detalle de los logs a través del parámetro log-level en loader.conf o en el campo SMBIOS io.systemd.boot.loglevel.
  • En systemd-networkd se han añadido las opciones EmitDomain y Domain para el servidor DHCP, así como un controlador para determinar los nombres de host proporcionados a través de DHCP mediante la resolución DNS.
  • En systemd-run se ha añadido la opción «—root-directory» para ejecutar un servicio en el directorio raíz especificado. En systemd-run y run0 se ha añadido la opción «—same-root-dir» («-R») para ejecutar el servicio en el mismo directorio raíz que el invocador.
  • En systemd-modules-load se ha implementado la paralelización de la carga de módulos del kernel.
  • En systemd-integrity-setup se ha añadido soporte para los algoritmos HMAC-SHA256, PHMAC-SHA256 y PHMAC-SHA512.

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