Après trois mois et demi de développement, le gestionnaire de système systemd 253 a été publié.
Parmi les changements de la nouvelle version :
- Le paquet inclut l'utilitaire « ukify », conçu pour construire, vérifier et générer des signatures pour les images de noyau unifiées (UKI, Unified Kernel Image), qui combinent un gestionnaire pour le chargement du noyau à partir de l'UEFI (UEFI boot stub), une image de noyau Linux et un environnement système initrd chargé en mémoire, utilisé pour l'initialisation avant le montage du système de fichiers racine. Cet utilitaire remplace les fonctionnalités précédemment fournies par la commande « dracut --uefi » et ajoute des capacités permettant le calcul automatique des décalages dans les fichiers PE, la fusion des initrd, la signature des images de noyau embarquées, la création d'images combinées avec sbsign, l'utilisation d'heuristiques pour déterminer le nom unique du noyau, la vérification de l'image de démarrage et l'ajout de politiques PCR signées générées par l'utilitaire systemd-measure.
- Ajout de la prise en charge des environnements initrd non limités à l'allocation de mémoire, qui utilisent overlayfs au lieu de tmpfs. Dans ces environnements, systemd ne supprime pas tous les fichiers de l'initrd après un changement de système de fichiers racine.
- Le paramètre « OpenFile » a été ajouté aux services pour ouvrir des fichiers arbitraires dans le système de fichiers (ou se connecter à des sockets Unix) et transmettre les descripteurs de fichiers associés au processus lancé (par exemple, lorsque vous devez organiser l'accès à un fichier pour un service non privilégié sans modifier les droits d'accès au fichier).
- Lors de l'enregistrement de nouvelles clés, systemd-cryptenroll prend désormais en charge le déverrouillage des partitions chiffrées à l'aide de jetons FIDO2 (--unlock-fido2-device) sans nécessiter de mot de passe. Le code PIN défini par l'utilisateur est désormais stocké avec un sel afin de rendre les attaques par force brute plus difficiles.
- Ajout des paramètres ReloadLimitIntervalSec et ReloadLimitBurst, ainsi que des options de ligne de commande du noyau (systemd.reload_limit_interval_sec et /systemd.reload_limit_burst) pour limiter la fréquence de redémarrage des processus en arrière-plan.
- Pour les unités, l'option « MemoryZSwapMax » a été implémentée pour configurer la propriété memory.zswap.max, qui détermine la taille maximale du zswap.
- Pour les unités, l'option « LogFilterPatterns » a été implémentée, vous permettant de spécifier des expressions régulières pour filtrer les informations consignées dans le journal (peut être utilisée pour exclure certaines sorties ou enregistrer uniquement certaines données).
- Les unités de portée prennent désormais en charge le paramètre « OOMPolicy » pour spécifier le comportement lors d'une tentative d'éviction en raison de conditions de mémoire insuffisante (pour les sessions de connexion, la valeur OOMPolicy=continue est définie pour empêcher le processus OOM killer de les terminer de force).
- Un nouveau type de service, « Type=notify-reload », a été défini. Il étend le type « Type=notify » en permettant d'attendre la fin du signal de redémarrage (SIGHUP). Les services suivants ont été migrés vers ce nouveau type : systemd-networkd.service, systemd-udevd.service et systemd-logind.
- udev utilise une nouvelle convention de nommage pour les périphériques réseau. La principale différence réside dans le fait que la variable ID_NET_NAME_PATH est désormais définie pour les périphériques USB non PCI afin de garantir des noms plus prévisibles. L'opérateur « -= » a été implémenté pour les variables SYMLINK, permettant ainsi de laisser les liens symboliques non configurés si une règle d'ajout a été préalablement définie.
- Dans systemd-boot, l'initialisation des générateurs de nombres pseudo-aléatoires du noyau et du système de stockage disque a été repensée. La prise en charge du chargement du noyau depuis des partitions autres que la partition système EFI (ESP) a été ajoutée, par exemple depuis le firmware ou directement pour QEMU. Les paramètres SMBIOS sont maintenant analysés pour déterminer si le système doit s'exécuter dans un environnement de virtualisation. Un nouveau mode « si sûr » a été implémenté : le certificat pour le démarrage sécurisé UEFI est chargé depuis l'ESP uniquement s'il est considéré comme sûr (exécution en mode sécurisé). machine virtuelle).
- L'utilitaire bootctl génère désormais des jetons système sur tous les systèmes EFI, à l'exception des environnements de virtualisation. Les commandes « kernel-identify » et « kernel-inspect » ont été ajoutées pour afficher le type d'image du noyau, les informations relatives aux options de ligne de commande et la version du noyau. La commande « unlink » supprime un fichier associé au premier type d'entrée de démarrage. Enfin, la commande « cleanup » supprime tous les fichiers du répertoire « entry-token » dans ESP et XBOOTLDR qui ne sont pas associés au premier type d'entrée de démarrage. La variable KERNEL_INSTALL_CONF_ROOT est désormais prise en charge.
- La commande « systemctl list-dependencies » gère désormais les options « --type » et « --state », et la commande « systemctl kexec » prend désormais en charge les environnements basés sur Xen.
- Dans les fichiers .network, la section [DHCPv4] prend désormais en charge les options SocketPriority et QuickAck, RouteMetric=high|medium|low.
- Les options systemd-repart « --include-partitions », « --exclude-partitions » et « --defer-partitions » ont été ajoutées pour filtrer les partitions par type UUID. Cela permet, par exemple, de créer des images où une partition est construite à partir du contenu d'une autre. L'option « --sector-size » a également été ajoutée pour spécifier la taille des secteurs utilisés lors de la création d'une partition. La prise en charge de la génération de systèmes de fichiers erofs a été ajoutée. Le paramètre Minimize gère désormais la valeur « best » afin de sélectionner la plus petite taille d'image possible.
- systemd-journal-remote permet d'utiliser les paramètres MaxUse, KeepFree, MaxFileSize et MaxFiles pour limiter la consommation d'espace disque.
- systemd-cryptsetup prend désormais en charge l'envoi de requêtes proactives pour les jetons FIDO2 afin de déterminer leur disponibilité avant l'authentification.
- Les nouveaux paramètres tpm2-measure-bank et tpm2-measure-pcr ont été ajoutés à crypttab.
- Dans systemd-gpt-auto-generator, le montage des partitions ESP et XBOOTLDR en modes « noexec, nosuid, nodev » a été implémenté, et la prise en compte des paramètres rootfstype et rootflags transmis via la ligne de commande du noyau a été ajoutée.
- systemd-resolved offre la possibilité de configurer les paramètres du résolveur en spécifiant les options nameserver, domain, network.dns et network.search_domains sur la ligne de commande du noyau.
- La commande « systemd-analyze plot » prend désormais en charge la sortie JSON avec l'option « --json ». Les nouvelles options « --table » et « --no-legend » permettent également de contrôler le format de sortie.
- La prise en charge des cgroups v1 et des hiérarchies de répertoires fractionnées (montage de /usr séparément de la racine, ou fractionnement de /bin et /usr/bin, /lib et /usr/lib) devrait être abandonnée en 2023.
Source: opennet.ru
