Systemd System Manager versión 251

Despois de cinco meses de desenvolvemento, preséntase a versión do xestor de sistema systemd 251.

Principais cambios:

  • Aumentáronse os requisitos do sistema. A versión mínima do núcleo de Linux soportada aumentou de 3.13 a 4.15. O temporizador CLOCK_BOOTTIME é necesario para o funcionamento. Para construír, necesitas un compilador que admita o estándar C11 e as extensións GNU (o estándar C89 segue usándose para ficheiros de cabeceira).
  • Engadiuse unha utilidade experimental systemd-sysupdate para detectar, descargar e instalar actualizacións automaticamente mediante un mecanismo atómico para substituír particións, ficheiros ou directorios (utilízanse dúas particións/ficheiros/directorios independentes, un dos cales contén o recurso de traballo actual e a outra instalacións). a próxima actualización, despois da cal se intercambian as seccións/arquivos/directorios).
  • Introduciuse unha nova biblioteca interna compartida libsystemd-core- .so, que está instalado no directorio /usr/lib/systemd/system e corresponde á librería libsystemd-shared- existente .así. Usando a biblioteca compartida libsystemd-core .so permítelle reducir o tamaño total da instalación reutilizando código binario. O número de versión pódese especificar mediante o parámetro 'shared-lib-tag' no sistema de compilación de meson e permite que as distribucións envíen varias versións destas bibliotecas ao mesmo tempo.
  • Implementouse a transferencia das variables de ambiente $MONITOR_SERVICE_RESULT, $MONITOR_EXIT_CODE, $MONITOR_EXIT_STATUS, $MONITOR_INVOCATION_ID e $MONITOR_UNIT da información sobre a unidade supervisada aos controladores OnFailure/OnSuccess.
  • Para as unidades, implementouse a configuración ExtensionDirectories, que se pode usar para organizar a carga de compoñentes da extensión do sistema desde directorios normais, en lugar de imaxes de disco. O contido do directorio de extensións do sistema superpónse mediante OverlayFS e utilízase para ampliar a xerarquía dos directorios /usr/ e /opt/ e engadir ficheiros adicionais no tempo de execución, aínda que os devanditos directorios estean montados de só lectura. O comando 'portablectl attach --extension=' tamén engadiu soporte para especificar un directorio.
  • Para as unidades terminadas forzadamente polo manejador systemd-oomd debido á falta de memoria no sistema, transmítese o atributo 'oom-kill' e o número de terminacións forzadas reflíctese no atributo 'user.oomd_ooms'.
  • Para as unidades, engadíronse novos especificadores de ruta %y/%Y, que reflicten o camiño normalizado á unidade (coa expansión das ligazóns simbólicas). Tamén se engaden os especificadores %q para substituír o valor PRETTY_HOSTNAME e %d para a substitución CREDENTIALS_DIRECTORY.
  • Nos servizos sen privilexios iniciados por un usuario normal mediante a marca "--user", cambia a configuración de RootDirectory, MountAPIVFS, ExtensionDirectories, *Capabilities*, ProtectHome, *Directory, TemporaryFileSystem, PrivateTmp, PrivateDevices, PrivateNetwork, NetworkNamespacePath, PrivateNamespaceIPC, IPCNamespace Permítense , PrivateUsers, ProtectClock , ProtectKernelTunables, ProtectKernelModules, ProtectKernelLogs e MountFlags. Esta función só está dispoñible cando os espazos de nomes de usuario están activados no sistema.
  • A configuración LoadCredential permite especificar un nome de directorio como argumento, en cuxo caso inténtase cargar as credenciais de todos os ficheiros do directorio especificado.
  • En systemctl, no parámetro "—timestamp", fíxose posible especificar a bandeira "unix" para mostrar a hora en formato de época (o número de segundos desde o 1 de xaneiro de 1970).
  • O "estado systemctl" implementa a marca "antigo núcleo", que se mostra se o núcleo cargado na sesión ten un número de versión máis antigo que o núcleo base dispoñible no sistema. Tamén engadiu unha marca "unmerged-usr" para determinar que os contidos dos directorios /bin/ e /sbin/ non se forman mediante ligazóns simbólicas a /usr.
  • Para xeradores iniciados por un proceso PID 1, ofrécense novas variables de ambiente: $SYSTEMD_SCOPE (iniciar desde un sistema ou servizo de usuario), $SYSTEMD_IN_INITRD (iniciar dende o ambiente initrd ou host), $SYSTEMD_FIRST_BOOT (indicador de primeiro arranque), $SYSTEMD_VIRTUALIZATION ( presenza de virtualización ou lanzamento nun contedor ) e $SYSTEMD_ARCHITECTURE (a arquitectura para a que se construíu o núcleo).
  • O controlador PID 1 implementa a capacidade de cargar parámetros de credenciais do sistema desde a interface QEMU fw_cfg ou especificando o parámetro systemd.set_credential na liña de comandos do núcleo. A directiva LoadCredential proporciona unha busca automática de credenciais nos directorios /etc/credstore/, /run/credstore/ e /usr/lib/credstore/ se se especifica unha ruta relativa como argumento. Un comportamento similar aplícase á directiva LoadCredentialEncrypted, que comproba ademais os directorios /etc/credstore.encrypted/, /run/credstore.encrypted/ e /usr/lib/credstore.encrypted/.
  • A capacidade de exportar en formato JSON estabilizouse en systemd-journald. Os comandos "journalctl --list-boots" e "bootctl list" agora admiten a saída en formato JSON (a marca "--json").
  • Engadíronse a udev novos ficheiros con bases de datos hwdb, que conteñen información sobre dispositivos portátiles (PDA, calculadoras, etc.) e dispositivos utilizados para crear son e vídeo (consolas DJ, teclados).
  • Engadíronse novas opcións "--prioritized-subsystem" a udevadm para establecer a prioridade dos seguintes sistemas (utilizados en systemd-udev-trigger.service para procesar primeiro os dispositivos de bloque e os TPM), "-type=all", "-initialized" -match" e "--initialized-nomatch" para seleccionar dispositivos inicializados ou sen inicializar, "udevadm info -tree" para mostrar unha árbore de obxectos na xerarquía /sys/. udevadm tamén engade novos comandos "esperar" e "bloquear" para esperar a que apareza unha entrada de dispositivo na base de datos e bloquear un dispositivo de bloqueo ao formatar ou escribir unha táboa de particións.
  • Engadiuse un novo conxunto de ligazóns simbólicas aos dispositivos /dev/disk/by-diskseq/ para identificar dispositivos de bloque por número de serie ("diskseq").
  • Engadiuse compatibilidade co parámetro "Firmware" aos ficheiros .link na sección [Coincidir] para facer coincidir o dispositivo segundo a descrición do firmware.
  • En systemd-networkd, para as rutas unicast configuradas a través da sección [Route], o valor de ámbito cambiouse a "link" por defecto para coincidir co comportamento do comando "ip route". O parámetro Isolated=true|false engadiuse á sección [Bridge] para configurar o atributo do mesmo nome para as pontes de rede no núcleo. Na sección [Túnel], engadiuse o parámetro Externo para establecer o tipo de túnel como externo (modo de recollida de metadatos). Na sección [DHCPServer], engadíronse os parámetros BootServerName, BootServerAddress e BootFilename para configurar o enderezo do servidor, o nome do servidor e o nome do ficheiro de arranque enviados polo servidor DHCP ao iniciar no modo PXE. Na sección [Rede], eliminouse o parámetro L2TP, no canto de que nos ficheiros .netdev pode usar a nova configuración Local en conexión coa interface L2TP.
  • Engadiuse unha nova unidade "systemd-networkd-wait-online@" .service", que se pode usar para esperar a que apareza unha interface de rede específica.
  • Agora é posible utilizar ficheiros .netdev para crear dispositivos WLAN virtuais, que se poden configurar na sección [WLAN].
  • Nos ficheiros .link/.network, a sección [Match] implementa o parámetro Kind para a correspondencia por tipo de dispositivo ("bond", "bridge", "gre", "tun", "veth").
  • Systemd-resolved lanzouse nunha fase de inicio anterior, incluíndo o lanzamento desde initrd se systemd-resolved está presente na imaxe initrd.
  • systemd-cryptenroll engade a opción --fido2-credential-algorithm para seleccionar o algoritmo de cifrado de credenciais e a opción --tpm2-with-pin para controlar a entrada do PIN ao desbloquear unha partición mediante TPM. Engadiuse unha opción tpm2-pin similar a /etc/crypttab. Ao desbloquear dispositivos mediante TPM, a configuración encriptase para protexerse contra a interceptación das claves de cifrado.
  • systemd-timesyncd engade a API D-Bus para recuperar información dinámicamente dun servidor NTP a través de IPC.
  • Para determinar a necesidade de saída en cor, todos os comandos implementan unha comprobación para a variable de ambiente COLORTERM ademais das marcadas previamente NO_COLOR, SYSTEMD_COLORS e TERM.
  • O sistema de compilación Meson implementa a opción install_tag para a montaxe selectiva e a instalación dos compoñentes necesarios: pam, nss, devel (pkg-config), systemd-boot, libsystemd, libudev. Engadiuse a opción de compilación de compresión predeterminada para seleccionar o algoritmo de compresión para systemd-journald e systemd-coredump.
  • Engadiuse a configuración experimental "reboot-for-bitlocker" a sd-boot en loader.conf para iniciar Microsoft Windows con BitLocker TPM.

Fonte: opennet.ru

Engadir un comentario