systemd 245 dispoñible coa implementación do directorio home portátil

Despois de tres meses de desenvolvemento presentado versión do administrador do sistema systemd 245. Na nova versión, engádense novos compoñentes systemd-homed e systemd-repart, inclúese soporte para perfís de usuario portátiles en formato JSON, ofrécese a capacidade de definir espazos de nomes en systemd-journald e engádese soporte para o mecanismo "pidfd". . Completamente redeseñado sitio web do proxecto, que recolle a maior parte da documentación dispoñible e propón un novo logotipo.

systemd 245 dispoñible coa implementación do directorio home portátil

O principal cambios:

  • Servizo engadido systemd-homed, que proporciona a xestión de directorios domésticos portátiles, entregados en forma de ficheiro de imaxe montado, cuxos datos están cifrados. Systemd-homed permítelle crear ambientes autónomos para os datos do usuario que se poden transferir entre diferentes sistemas sen preocuparse pola sincronización e confidencialidade do identificador. As credenciais do usuario están ligadas ao directorio de inicio en lugar da configuración do sistema; utilízase un perfil co formato en lugar de /etc/passwd, /etc/group e /etc/shadow JSON. Para máis detalles, consulte último anuncio systemd-homed.
  • Engadiuse un compoñente complementario systemd-homed "userdb” (“systemd-userdb”), que traduce as contas NSS UNIX/glibc en rexistros JSON e proporciona unha API Varlink unificada para consultar e iterar sobre rexistros. O perfil JSON asociado ao directorio de inicio especifica os parámetros necesarios para o traballo do usuario, incluído o nome de usuario, o hash do contrasinal, as claves de cifrado, as cotas e os recursos aprovisionados. O perfil pódese certificar cunha sinatura dixital almacenada nun token Yubikey externo. Para xestionar perfís proponse a utilidade “userdbctl”. Engadiuse soporte para perfís JSON a varios compoñentes de systemd, incluíndo systemd-logind e pam-systemd, o que permite aos usuarios de directorios portátiles autenticarse, iniciar sesión, establecer variables de ambiente, crear unha sesión, establecer límites, etc. No futuro, espérase que o marco sssd poida xerar perfís JSON con configuracións de usuario almacenadas en LDAP.
  • Engadiuse unha nova utilidade "systemd-repart", deseñada para reparticionar as táboas de particións do disco en formato GPT. A estrutura da partición defínese en forma declarativa a través de ficheiros que describen que particións deberían ou poden existir. En cada inicio, a táboa de particións real compárase con estes ficheiros, despois de que engádense as particións que faltan ou, se o tamaño relativo ou absoluto definido na configuración non coincide, aumenta o tamaño das existentes. Só se permiten cambios incrementais, é dicir. non é posible eliminar e reducir o tamaño, só se poden engadir e ampliar as particións.
    A utilidade está deseñada para ser iniciada desde o initrd e detecta automaticamente o disco no que se atopa a partición raíz, que non require configuración adicional, agás os ficheiros coa definición de cambios.

    Na práctica, systemd-repart pode ser útil para as imaxes do sistema operativo que inicialmente se poden enviar nunha forma mínima, e despois do primeiro arranque pódese ampliar ao tamaño do dispositivo de bloque existente ou complementarse con particións adicionais (por exemplo, a raíz. partición pódese expandir para cubrir todo o disco ou despois do primeiro arranque crear unha partición de intercambio ou /home). Outro uso serían as configuracións con dúas particións xiratorias: só se pode proporcionar inicialmente a primeira partición e a segunda crearase no primeiro arranque.

  • Agora é posible lanzar varias instancias de systemd-journald, cada unha das cales mantén rexistros no seu propio espazo de nomes. Ademais do systemd-journald.service principal, o directorio .service ofrece un modelo para crear instancias adicionais ligadas aos seus espazos de nomes mediante a directiva "LogNamespace". Cada espazo de nomes de rexistro é servido por un proceso en segundo plano separado co seu propio conxunto de configuracións e límites. A función proposta pode ser útil para equilibrar a carga cun gran volume de rexistros ou para mellorar o illamento da aplicación. Engadiuse a opción "--namespace" a journalctl para limitar a consulta só ao espazo de nomes especificado.
  • Systemd-udevd e outros compoñentes de systemd engadiron soporte para un mecanismo para asignar nomes alternativos ás interfaces de rede, o que permite usar varios nomes simultaneamente para unha interface. O nome pode ter ata 128 caracteres (anteriormente, o nome da interface de rede estaba limitado a 16 caracteres). De xeito predeterminado, systemd-udevd agora asigna a cada interface de rede todos os nomes de variantes xerados polos esquemas de nomenclatura admitidos. Este comportamento pódese cambiar mediante a nova configuración de AlternativeName e AlternativeNamesPolicy nos ficheiros .link. systemd-nspawn implementa a xeración de nomes alternativos co nome completo do contenedor para as ligazóns veth creadas no lado do host.
  • A API sd-event.h engade soporte para o subsistema do núcleo de Linux "pidfd" para xestionar a situación de reutilización de PID (pidfd está asociado a un proceso específico e non cambia, mentres que un PID pódese asociar a outro proceso despois do proceso actual). asociado con el sae deste PID). Todos os compoñentes de systemd excepto o PID 1 convertéronse para usar pidfds se o subsistema é compatible co núcleo actual.
  • systemd-logind ofrece comprobacións de acceso para a operación de cambio de terminal virtual a través de PolicyKit. Por defecto, os permisos para cambiar o terminal activo concédense só aos usuarios que iniciaron unha sesión no terminal virtual local polo menos unha vez.
  • Para facilitar a creación de imaxes initrd con systemd, o controlador PID 1 detecta agora se se está a usar no initrd e, neste caso, carga automaticamente initrd.target en lugar de default.target. Con este enfoque, as imaxes do sistema initrd e principais poden diferir só na presenza do ficheiro /etc/initrd-release.
  • Engadiuse un novo parámetro de liña de comandos do núcleo - "systemd.cpu_affinity", equivalente á opción CPUAffinity en /etc/systemd/system.conf e que lle permite configurar a máscara de afinidade da CPU para o PID 1 e outros procesos.
  • Activada a recarga da base de datos SELinux xunto co reinicio do PID 1 mediante comandos como "systemctl daemon-reload".
  • A configuración "systemd.show-status=error" engadiuse ao controlador PID 1, cando se estableceu, só se mostran na consola as mensaxes de erro e os atrasos significativos durante a carga.
  • systemd-sysusers engadiu compatibilidade para crear usuarios cun nome de grupo principal que é diferente do nome de usuario.
  • systemd-growfs introduce soporte para a expansión da partición XFS a través da opción de montaxe x-systemd.growfs en /etc/fstab, ademais da expansión da partición admitida anteriormente con Ext4 e Btrfs.
  • Engadiuse a opción x-initrd.attach a /etc/crypttab para definir unha partición cifrada xa desbloqueada na fase initrd.
  • systemd-cryptsetup engadiu compatibilidade (opción pkcs11-uri en /etc/crypttab) para desbloquear particións cifradas usando tarxetas intelixentes PKCS#11, por exemplo para conectar o cifrado de particións a YubiKeys.
  • Engadíronse novas opcións de montaxe "x-systemd.required-by" e "x-systemd.wanted-by" a /etc/fstab para configurar de forma explícita as unidades que definen as operacións de montaxe que se chamarán en lugar de local-fs.target e remote. -fs .obxectivo.
  • Engadiuse unha nova opción de sandboxing de servizo: ProtectClock, que limita a escritura no reloxo do sistema (o acceso está bloqueado no nivel de /dev/rtc, chamadas ao sistema e permisos CAP_SYS_TIME/CAP_WAKE_ALARM).
  • A especificación Particións descubribles e systemd-gpt-auto-generator engadiu a detección de particións
    /var e /var/tmp.

  • En "systemctl list-unit-files", ao mostrar unha lista de unidades, apareceu unha nova columna que reflicte o estado de habilitación ofrecido nos predefinidos do fabricante para este tipo de unidades.
  • Engadiuse a opción "—con-dependencias" a "systemctl", cando se instale, comandos como "systemctl status" e "systemctl cat" mostrarán non só todas as unidades correspondentes, senón tamén as unidades das que dependen.
  • En systemd-networkd, a configuración de qdisc engadiu a posibilidade de configurar os parámetros TBF (Filtro de cubo de fichas), SFQ (Cola de equidade estocástica), CoDel (Xestión de filas activas con retardo controlado) e FQ (Cola xusta).
  • systemd-networkd engadiu soporte para dispositivos de rede IFB (Bloque Funcional Intermedio).
  • Systemd-networkd implementa o parámetro MultiPathRoute na sección [Route] para configurar rutas de varias rutas.
  • En systemd-networkd para o cliente DHCPv4, engadiuse a opción SendDecline, cando se especifica, despois de recibir unha resposta DHCP cun enderezo, realízase unha comprobación de enderezos duplicados e, se se detecta un conflito de enderezos, rexéitase o enderezo emitido. A opción RouteMTUBytes tamén se engadiu ao cliente DHCPv4, o que lle permite determinar o tamaño de MTU para as rutas xeradas a partir de ligazóns de enderezos IP (arrendamentos).
  • A configuración PrefixRoute na sección [Enderezo] dos ficheiros .network quedou en desuso. Substituíuse pola configuración "AddPrefixRoute", que ten o significado oposto.
  • Nos ficheiros .network, engadiuse compatibilidade co novo valor "_dhcp" á configuración da Pasarela na sección "[Ruta]", cando se establece unha ruta estática en función da pasarela configurada a través de DHCP.
  • A configuración apareceu nos ficheiros .network da sección "[RoutingPolicyRule]".
    User e SuppressPrefixLength para especificar o enrutamento de orixe en función dos intervalos de UID e do tamaño do prefixo.

  • En networkctl, o comando "estado" ofrece a posibilidade de mostrar rexistros en relación con cada interface de rede.
  • systemd-networkd-wait-online engade compatibilidade para establecer o tempo máximo de espera para que unha interface se poña en funcionamento e para esperar a que caia.
  • Deixou de procesar ficheiros .link e .network cunha sección "[Coincidir]" baleira ou comentada.
  • Nos ficheiros .link e .network, na sección "[Coincidir]", engadiuse unha configuración "PermanentMACAddress" para comprobar o enderezo MAC permanente dos dispositivos no caso de utilizar un MAC aleatorio xerado.
  • A sección "[TrafficControlQueueingDiscipline]" nos ficheiros .network cambiouse o nome a "[NetworkEmulator]" e o prefixo "NetworkEmulator" eliminouse dos nomes das configuracións asociadas.
  • systemd-resolved para DNS-over-TLS engade soporte para a comprobación SNI.

Fonte: opennet.ru

Engadir un comentario