Gestionnaire système systemd 258 disponible

Après neuf mois de développement, la version du gestionnaire de système systemd 258 est présentée. Changements clés : fin du support des cgroups v1 et des composants de gestion du système de style System V, nouvelles utilitaires systemd-factory-reset et systemd-pty-forward, concept d'espaces personnels, prise en charge du démarrage à partir d'une image disque obtenue via HTTP.

Parmi les changements de la nouvelle version :

  • Ajout de l'utilitaire systemd-factory-reset pour initier ou annuler la réinitialisation des paramètres à l'état d'origine (réinitialisation d'usine) au prochain démarrage. Pour une réinitialisation instantanée, une unité factory-reset-now.target a été ajoutée. Pour réinitialiser au démarrage, un paramètre de ligne de commande du noyau «systemd.factory_reset» a été ajouté.
  • Ajout du concept d'espaces personnels (home area), permettant de définir des sous-dossiers au sein du répertoire personnel principal ($HOME), dans lesquels l'utilisateur peut se connecter séparément pour travailler dans différents espaces de travail. Par exemple, un utilisateur peut créer des zones distinctes pour tester des configurations et pour le développement (~ /Areas /foo et ~ /Areas /bar). Pour se connecter à un espace supplémentaire lors de la connexion, il faut indiquer dans le nom d'utilisateur le nom de l'espace, séparé par le caractère «%» («username%foo») ou utiliser l'utilitaire run0 avec l'option «—area». La prise en charge des espaces personnels est pour l'instant implémentée uniquement dans systemd-homed et n'est pas disponible pour des sessions graphiques complètes.
  • Des paramètres de ligne de commande du noyau «systemd.pull» et «rd.systemd.pull», appliqués pour le démarrage automatique machines virtuelles, des conteneurs ou des images d'extension (sysext, confext), un drapeau «blockdev» a été ajouté. Lorsqu'il est spécifié, l'image chargée est attachée à un périphérique en boucle, permettant un démarrage direct à partir d'une image disque, obtenue via HTTP. Par exemple : rd.systemd.pull=raw,machine,verify=no,blockdev:image:https://192.168.100.1:8081/image.raw \ root=/dev/disk/by-loop-ref/image.raw-part2
  • Ajout de l'utilitaire systemd-pty-forward, qui permet de créer un pseudo-terminal («PTY») et d'exécuter un processus dessus, redirigeant toute sortie vers le terminal d'origine sur lequel l'utilitaire a été lancé.
  • Suppression du code assurant le support des cgroups v1.
  • Suppression des composants de gestion du système de style System V, tels que les utilitaires itctl, runlevel et telinit, le périphérique /dev/initctl, le concept de niveaux de démarrage (runlevel), les fichiers unit runlevel[0-6].target et la possibilité de gérer l'état via la commande init. La suppression du support des scripts de service System V est prévue pour la prochaine version.
  • Les exigences minimales pour la version du noyau Linux ont été portées à la version 5.4 (la version 5.7 est recommandée).
  • Les droits d'accès aux dispositifs tty/pts ont été modifiés de 0620 (-rw—w—-) à 0600 (-rw——-) pour interdire l'écriture dans le terminal d'autrui par d'autres utilisateurs faisant partie du même groupe. Pour revenir à l'ancien comportement lors de la compilation, l'option '-Dtty-mode=0620' peut être utilisée.
  • Dans systemd-resolved et systemd-importd, le support des bibliothèques GnuTLS et libgcrypt a été abandonné, ne laissant que OpenSSL comme backend cryptographique.
  • Le support de la condition « ConditionKernelModuleLoaded » a été ajouté aux fichiers unitaires pour vérifier le chargement d'un module noyau spécifique. La condition « ConditionKernelVersion » a été remplacée par une construction plus générale « ConditionVersion », permettant de vérifier les versions de systemd et glibc en plus du noyau.
  • Le support des quotas utilisateurs pour la partition /tmp/, placée dans tmpfs, et pour /dev/shm/ a été activé.
  • Pour les unités slice, utilisées pour diviser le système en parties (app.slice, background.slice, session.slice) afin d'isoler les ressources entre différents services utilisateurs, des paramètres ConcurrencySoftMax et ConcurrencyHardMax ont été implémentés pour gérer le nombre d'unitésactives simultanément. Les nouvelles fonctionnalités peuvent être utilisées comme un mécanisme de gestion du démarrage des tâches en tenant compte de la consommation des ressources, prenant en charge des pools de tâches hiérarchiques.
  • Le paramètre ExecStart a été mis à jour pour inclure le préfixe '|', définissant le lancement via un interpréteur de commandes.
  • Une API basée sur le protocole Varlink a été mise en œuvre, pouvant être utilisée pour déterminer l'état actuel, la liste des unités et l'état des unités.
  • Un répertoire supplémentaire avec des préréglages (« preset ») pour les services système exécutés dans initrd a été ajouté, permettant de séparer l'activation des services système pour l'hôte et pour initrd.
  • La possibilité de lier des quotas à des services individuels a été ajoutée, en utilisant les paramètres StateDirectoryQuota, StateDirectoryAccounting, CacheDirectoryQuota, CacheDirectoryAccounting, LogsDirectoryQuota et LogsDirectoryAccounting.
  • Le support des propriétés ID_NET_BRING_UP_BEFORE_JOINING_BRIDGE, ID_NET_NAME_INCLUDE_DOMAIN, ID_AV_LIGHTS a été ajouté dans systemd-udevd. Un paramètre de construction du noyau «udev.trace» et l'option «—traceu» dans l'utilitaire devadm ont été ajoutés pour tracer la logique de fonctionnement de udev lors du démarrage et pendant le fonctionnement. La commande «cat» a été ajoutée à l'utilitaire udevadm pour afficher le contenu des fichiers de règles installés. Le marquage automatique des interfaces USB de débogage Android (ADB DbC, ADB, Fastboot) a été assuré pour un accès non privilégié.
  • Dans systemd-networkd, les paramètres IPv4DuplicateAddressDetectionTimeoutSec, UseSIP ont été ajoutés à la section «[DHCPv6]», MPLSRouting à la section «[Network]», Preference à la section «[IPv6RoutePrefix]», LinkLocalLearning, Locked, MACAuthenticationBypass et VLANTunnel à la section «[Bridge]». Le client DHCPv4 a ajouté le support du protocole BOOTP.
  • Dans systemd-logind, de nouvelles classes de sessions ont été ajoutées : «none» pour désactiver la création de sessions ; «user-light» et «user-early-light» pour créer des sessions utilisateur sans activation pour le gestionnaire de services utilisateur (pour des sessions non interactives).
  • Dans systemd-resolved, le support des zones de délégation («delegate zone») a été ajouté, permettant de router les requêtes DNS pour certains domaines à travers des serveurs DNS. L'envoi de requêtes DNS parallèles pour les enregistrements A et AAAA pour un domaine a été assuré. Dans resolved.conf, le paramètre RefuseRecordTypes a été ajouté pour définir les types d'enregistrements bloqués, par exemple, pour bloquer les enregistrements «A» sur des hôtes uniquement avec IPv6.
  • L'option «—verbose» a été ajoutée à la commande «systemctl start» pour afficher le log des unités sur lesquelles l'opération est effectuée.
  • Dans systemd-boot, le support de deux nouvelles spécifications de chargeurs — «uki» et «uki-url» a été ajouté. Dans le second cas, la possibilité de charger une image UKI depuis un hôte externe par le protocole HTTP a été mise en œuvre. La possibilité d'incorporer des images de firmware UEFI dans des images UKI (Unified Kernel Image) a été ajoutée. Dans loader.conf, le paramètre «reboot-on-error» a été ajouté pour définir les actions (redémarrer ou afficher le menu de démarrage) en cas d'échec de la position de démarrage sélectionnée.
  • Dans systemd-nspawn, le support du lancement non privilégié d'images de conteneurs stockées dans des répertoires ordinaires a été ajouté.
  • Dans systemd-importd, le support des images compressées par l'algorithme zstd (en plus de .xz, .gz et .bz2) a été ajouté.
  • Des paramètres de ligne de commande du noyau «systemd.break» et «rd.systemd.break» ont été ajoutés, permettant d'insérer des points d'arrêt interactifs, interrompant le démarrage à des moments précis. Quatre points d'arrêt sont disponibles : «pre-udev», «pre-basic», «pre-mount» et «pre-switch-root».
  • La prochaine version prévoit l'arrêt du support du répertoire /run/lock/ et du filtre de paquets iptables (seul le support de nftables restera dans systemd-networkd et systemd-nspawn). De plus, une augmentation des exigences pour les versions minimales est prévue : noyau Linux 5.10, glibc 2.34, openssl 3.0.0, python 3.9.0.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster