versión 244 del administrador del sistema systemd

Después de tres meses de desarrollo presentado lanzamiento del administrador del sistema systemd 244.

Cambios importantes:

  • Se agregó soporte para el controlador de recursos cpuset basado en cgroups v2, que proporciona un mecanismo para vincular procesos a CPU específicas (la configuración "AllowedCPU") y nodos de memoria NUMA (la configuración "AllowedMemoryNodes");
  • Se agregó soporte para cargar configuraciones desde la variable EFI SystemdOptions para la configuración de systemd, lo que le permite personalizar el comportamiento de systemd en situaciones donde cambiar las opciones de la línea de comando del kernel es problemático y la configuración del disco se lee demasiado tarde (por ejemplo, cuando necesita configurar opciones relacionado con la jerarquía del grupo c). Para configurar una variable en EFI, puede usar el comando 'bootctl systemd-efi-options';
  • Se agregó soporte a las unidades para cargar configuraciones desde directorios “{unit_type}.d/” asociados con tipos de unidades (por ejemplo, “service.d/”), que se pueden usar para agregar configuraciones que cubren todos los archivos de unidades de un tipo determinado en una vez;
  • Para las unidades de servicio, se ha agregado un nuevo modo de aislamiento de espacio aislado ProtectKernelLogs, que le permite denegar el acceso del programa al búfer de registro del kernel, accesible a través de la llamada al sistema syslog (que no debe confundirse con la API del mismo nombre proporcionada en libc). Si el modo está activado, se bloqueará el acceso de las aplicaciones a /proc/kmsg, /dev/kmsg y CAP_SYSLOG;
  • Para las unidades, se ha propuesto una configuración RestartKillSignal, que le permite redefinir el número de señal utilizada para finalizar el proceso durante el reinicio de la tarea (puede cambiar el comportamiento de detener el proceso en la etapa de preparación para el reinicio);
  • El comando “systemctl clean” se ha adaptado para su uso con unidades de enchufe, montaje e intercambio;
  • En la etapa inicial de carga, las restricciones en la intensidad de la salida de mensajes del kernel a través de la llamada printk están deshabilitadas, lo que permite acumular registros más completos sobre el progreso de la carga en una etapa en la que el almacenamiento de registros aún no está conectado (el registro se acumula en el buffer de anillo del kernel). Establecer límites de printk desde la línea de comando del kernel tiene prioridad y le permite anular el comportamiento de systemd. Los programas Systemd que envían registros directamente a /dev/kmsg (esto se hace sólo al principio de la fase de arranque) utilizan restricciones internas separadas para protegerse contra la obstrucción del búfer;
  • El comando 'stop —job-mode=triggering' se ha agregado a la utilidad systemctl, que le permite detener tanto la unidad especificada en la línea de comando como todas las unidades que pueden llamarla;
  • La información del estado de la unidad ahora incluye información sobre las unidades llamantes y llamadas;
  • Es posible utilizar la configuración “RuntimeMaxSec” en unidades de alcance (anteriormente se usaba solo en unidades de servicio). Por ejemplo, "RuntimeMaxSec" ahora se puede utilizar para limitar el tiempo de las sesiones PAM mediante la creación de una unidad de alcance.
    para una cuenta de usuario. El límite de tiempo también se puede establecer mediante la opción systemd.runtime_max_sec en los parámetros del módulo PAM pam_systemd;

  • Se agregó un nuevo grupo de llamadas al sistema “@pkey”, al limitar contenedores y servicios, lo que facilita la inclusión en la lista blanca de llamadas al sistema relacionadas con la protección de la memoria;
  • Se agregó el indicador "w+" a systemd-tmpfiles para escribir en modo de agregar archivos;
  • Se agregó información a la salida de systemd-analyze sobre si la configuración de la memoria del kernel coincide con la configuración de systemd (por ejemplo, si algún programa de terceros ha cambiado los parámetros del kernel);
  • La opción “--base-time” se ha agregado a systemd-analyze; cuando se especifica, los datos del calendario se calculan en relación con la hora especificada en esta opción, y no en relación con la hora actual del sistema;
  • “journalctl —update-catalog” garantiza la coherencia en la secuencia de elementos en la salida (útil para organizar compilaciones repetibles);
  • Se agregó la capacidad de especificar un valor predeterminado para la configuración "WatchdogSec" utilizada en los servicios systemd. En el momento de la compilación, el valor base se puede determinar mediante la opción "-Dservice-watchdog" (si se establece en vacío, el mecanismo de vigilancia se desactivará);
  • Se agregó la opción de compilación "-Duser-path" para anular el valor de $PATH;
  • Se agregó la opción "-u" ("--uuid") a systemd-id128 para generar identificadores de 128 bits en UUID (representación canónica de UUID);
  • La compilación ahora requiere al menos libcryptsetup versión 2.0.1.

Cambios relacionados con la configuración de red:

  • Systemd-networkd ha agregado soporte para reconfigurar un enlace sobre la marcha, para lo cual los comandos "recargar" y "reconfigurar DEVICE..." se han agregado a networkctl para recargar configuraciones y reconfigurar dispositivos;
  • systemd-networkd ha dejado de crear rutas predeterminadas para enlaces IPv4 locales con direcciones de intranet 169.254.0.0/16 (Enlace local). Anteriormente, la creación automática de rutas predeterminadas para dichos enlaces generaba comportamientos inesperados y problemas de enrutamiento en algunos casos. Para devolver el comportamiento anterior, utilice la configuración "DefaultRouteOnDevice=yes". De manera similar, la asignación de direcciones IPv6 locales se detiene si el enrutamiento IPv6 local no está habilitado para el enlace;
  • En systemd-networkd, cuando se conecta a redes inalámbricas en modo ad-hoc, la configuración predeterminada se implementa con direccionamiento de enlace local (link-local);
  • Se agregaron parámetros RxBufferSiz y TxBufferSize para configurar el tamaño de los buffers de recepción y envío de la interfaz de red;
  • systemd-networkd implementa la publicidad de rutas IPv6 adicionales, reguladas a través de las opciones Route y LifetimeSec en la sección “[IPv6RoutePrefix]”;
  • systemd-networkd ha agregado la capacidad de configurar rutas de "próximo salto" usando las opciones "Gateway" e "Id" en la sección "[NextHop]";
  • systemd-networkd y networkctl para DHCP proporcionan actualización sobre la marcha de enlaces de direcciones IP (arrendamientos), implementadas mediante el comando 'networkctl renew';
  • systemd-networkd garantiza que la configuración de DHCP se restablezca al reiniciar (use la opción KeepConfiguration para guardar la configuración). El valor predeterminado de la configuración SendRelease se ha cambiado a "verdadero";
  • El cliente DHCPv4 garantiza que se utilice el valor de la opción OPTION_INFORMATION_REFRESH_TIME enviado por el servidor. Para solicitar opciones específicas del servidor, se propone el parámetro "RequestOptions" y para enviar opciones al servidor, "SendOption". Para configurar el tipo de servicio IP por parte del cliente DHCP se ha agregado el parámetro “IPServiceType”;
  • Para sustituir la lista de servidores SIP (Session Initiation Protocol) por servidores DHCPv4 se han añadido los parámetros “EmitSIP” y “SIP”. En el lado del cliente, la recepción de parámetros SIP desde el servidor se puede habilitar usando la configuración “UseSIP=yes”;
  • Se agregó el parámetro "PrefixDelegationHint" al cliente DHCPv6 para solicitar un prefijo de dirección;
  • Los archivos .network brindan soporte para mapear redes inalámbricas por SSID y BSSID, por ejemplo, para vincularse a un nombre de punto de acceso y una dirección MAC. Los valores SSID y BSSID se muestran en la salida networkctl para interfaces inalámbricas. Además, se ha agregado la capacidad de comparar por tipo de red inalámbrica (parámetro WLANInterfaceType);
  • systemd-networkd ha agregado la capacidad de configurar disciplinas de cola para controlar el tráfico utilizando nuevos parámetros principales,
    NetworkEmulatorDelaySec, NetworkEmulatorDelayJitterSec,
    NetworkEmulatorPacketLimit y NetworkEmulatorLossRate,
    NetworkEmulatorDuplicateRate en la sección “[TrafficControlQueueingDiscipline]”;

  • systemd-resolved proporciona verificación de direcciones IP en certificados cuando se compila con GnuTLS.

Cambios relacionados con udev:

  • Systemd-udevd ha eliminado el tiempo de espera de 30 segundos para forzar la finalización de los controladores atascados. Systemd-udevd ahora espera a que se completen los controladores para los cuales 30 segundos no fueron suficientes para completar las operaciones normalmente en instalaciones grandes (por ejemplo, un tiempo de espera podría interrumpir la inicialización del controlador durante el proceso de cambio de la partición montada para el sistema de archivos raíz). Cuando se utiliza systemd, el tiempo de espera que systemd-udevd esperará antes de salir se puede configurar mediante la configuración TimeoutStopSec en systemd-udevd.service. Cuando se ejecuta sin systemd, el tiempo de espera está controlado por el parámetro udev.event_timeout;
  • Se agregó el programa fido_id para udev, que identifica tokens FIDO CTAP1
    (“U2F”)/CTAP2 se basa en datos sobre su uso anterior y muestra las variables de entorno necesarias (el programa le permite prescindir de listas blancas externas de todos los tokens conocidos que se utilizaron anteriormente);

  • Se implementó la generación automática de reglas de suspensión automática de udev para dispositivos de la lista blanca importada desde Chromium OS (el cambio le permite ampliar el uso de modos de ahorro de energía para dispositivos adicionales);
  • Se agregó una nueva configuración "CONST{key}=value" a udev para permitir asignaciones de valores constantes del sistema directamente sin ejecutar controladores de verificación separados. Actualmente sólo se admiten las claves "arch" y "virt";
  • Se ha permitido que el CDROM se abra en modo no exclusivo al realizar una operación de solicitud para los modos admitidos (el cambio resuelve problemas con los programas que acceden al CDROM y reduce el riesgo de interrupción de la escritura en disco de programas que no utilizan el modo de acceso exclusivo).

Fuente: opennet.ru

Añadir un comentario