# Exigences du kernel pour systemd Cette section présente les exignces minimales du noyau pour pouvoir utiliser systemd. https://github.com/systemd/systemd/blob/main/README #### Version minimale du kernel * Noyau Linux> = 3.13 * Noyau Linux> = 4.2 pour la prise en charge de la hiérarchie des groupes de contrôle unifiés #### Options de configuration du noyau ^ Options de base ^ API de chiffrement / hachage du noyau ^ udev((**udev** est un gestionnaire de périphériques remplaçant devfs dans le noyau Linux depuis la version 2.6. Sa fonction principale est de gérer les périphériques dans le répertoire /dev.)) ^ Facultatif mais fortement recommandé ^ Contrôles des ressources ^ systèmes UEFI ^ Virtualisation ((**Virtualisation** Si systemd est compilé avec le support libseccomp sur une architecture qui n'utilise pas socketcall() et où seccomp est pris en charge (cela signifie effectivement x86-64 et ARM, mais exclut x86 32 bits!), alors nspawn va installer un filtre seccomp de contournement qui permet aux conteneurs de démarrer même avec l'audit activé. Cependant cela ne fonctionne correctement que sur les noyaux 3.14 et plus récent)) ^ | CONFIG\_DEVTMPFS | CONFIG\_CRYPTO\_USER\_API\_HASH | CONFIG\_SYSFS\_DEPRECATED = n ((**CONFIG\_SYSFS\_DEPRECATED** udev ne fonctionnera pas avec la disposition sysfs héritée)) |CONFIG\_IPV6 | CONFIG\_CGROUP\_SCHED((**CONFIG\_CGROUP\_SCHED** Obligatoire pour **CPUShares=** dans les paramètres de l'unité de contrôle des ressources)) \\ CONFIG\_FAIR\_GROUP\_SCHED | CONFIG\_EFIVAR\_FS | CONFIG\_DEVPTS\_MULTIPLE\_INSTANCES((**CONFIG\_DEVPTS\_MULTIPLE\_INSTANCES** ou noyau Linux> = 4.7 sont requis pour **systemd-nspawn**)) | | CONFIG\_NET | CONFIG\_CRYPTO\_HMAC | CONFIG\_UEVENT\_HELPER\_PATH = ""((**CONFIG\_UEVENT\_HELPER\_PATH** Le hotplug hérité ralentit le système et confond udev)) | CONFIG\_AUTOFS4\_FS | CONFIG\_CFS\_BANDWIDTH((**CONFIG\_CFS\_BANDWIDTH** Obligatoire pour **CPUQuota=** dans les paramètres de l'unité de contrôle des ressources)) | CONFIG\_EFI\_PARTITION | CONFIG\_AUDIT=n((**CONFIG\_AUDIT** L'audit du noyau est rompu lorsqu'il est utilisé avec les code conteneur systemd. Lorsqu'on veut utiliser systemd conjointement avec les conteneurs, il faut désactiver l'audit en utilisant l'option de ligne de commande du noyau **audit=0**, ou en le désactivant au moment de la compilation du noyau en utilisant)) | | CONFIG\_INOTIFY\_USER | CONFIG\_CRYPTO\_SHA256 | CONFIG\_DMIID ((**CONFIG\_DMIID** Certaines règles udev et la détection de virtualisation en dépendent)) | CONFIG\_TMPFS\_XATTR | CONFIG\_CGROUP\_BPF((**CONFIG\_CGROUP\_BPF** Obligatoire pour **IPAddressDeny=** et **IPAddressAllow=** dans le contrôle des ressources réglages de l'unité)) | CONFIG\_RT\_GROUP\_SCHED=n((**CONFIG\_RT\_GROUP\_SCHED** Il est recommandé de désactiver la planification de groupe en temps réel dans le noyau lors de l'utilisation de systemd. L'activation de la planification de groupe RT rend la planification RT indisponible pour la plupart des espaces utilisateurs, car elle nécessite l'affectation explicite des budgets de RT à chaque unité processus utilisant la RT. Comme il n'y a aucun moyen sensé d'attribuer ces budgets automatiquement cela ne peut pas vraiment être fixe, et il est préférable de désactiver la planification de groupe par conséquent.)) | | | CONFIG\_SIGNALFD | | CONFIG\_FW\_LOADER\_USER\_HELPER = n((**CONFIG\_FW\_LOADER\_USER\_HELPER** Le chargement du micrologiciel de l'espace utilisateur n'est pas pris en charge et devrait être désactivé dans le noyau)) | CONFIG\_ {TMPFS, EXT4\_FS, XFS, BTRFS\_FS, ...} \_ POSIX\_ACL | | | | CONFIG\_TIMERFD | | CONFIG\_BLK\_DEV\_BSG ((**CONFIG\_BLK\_DEV\_BSG** Prise en charge de la récupération du numéro de série de certains périphériques SCSI, crée des liens symboliques supplémentaires dans `/dev/disk/` et `/dev/tape`)) | CONFIG\_SECCOMP | | | | CONFIG\_EPOLL | | CONFIG\_NET\_NS((**CONFIG\_NET\_NS** systemd-localed.service et d'autres unités systemd utilisent **PrivateNetwork** donc cela est nécessaire.)) | CONFIG\_SECCOMP\_FILTER ((**CONFIG\_SECCOMP\_FILTER** requis pour le support **seccomp**)) | | | | CONFIG\_SYSFS | | CONFIG\_USER\_NS((**CONFIG\_USER\_NS** Obligatoire pour **PrivateUsers=** en unités de service)) | CONFIG\_CHECKPOINT\_RESTORE ((**CONFIG\_CHECKPOINT\_RESTORE** pour l'appel système **kcmp()**)) | | | | CONFIG\_PROC\_FS | | | | | | CONFIG\_FHANDLE ((**CONFIG\_FHANDLE** libudev, gestion du montage et de la liaison))) | | | | | | CONFIG\_CGROUPS ((**CONFIG\_CGROUPS** il est OK de désactiver tous les contrôleurs)) | | | | | |