Chronologie des versions


systemd est unesuite logicielle qui fournit une gamme de composants système pour les systèmes d'exploitation Linux (y compris pourWSL sous Windows).
Le premier composant desystemd est lesystème d’initialisation, il a pour but d'offrir un meilleur cadre pour la gestion des dépendances entre services, de permettre le chargement en parallèle des services au démarrage et de réduire les appels aux scriptsshell. C'est une alternative àSysV init. Il fournit également des remplacements pour diversdaemons et utilitaires, notamment pour la gestion des périphériques, la gestion des connexions des utilisateurs, la gestion des connexions réseau et la journalisation des événements.
Le projet a été lancé parLennart Poettering en 2010 et publié sous licenceGNULGPL version 2.1[2]. Le nom de ce programme vient de « system daemon » : ledaemon du système.
Ce projet a suscité de vives controverses chez les développeurs deGNU/Linux.
En 2015, la plupart desdistributions GNU/Linux ont adopté cesystème d’initialisation.
systemd est basé sur quelques dizaines de binaires gérant l'ensemble dusystème de boot, et quittant ainsi la philosophieUNIX duKISS[3].
Systemd adopte un nouveau système de log appelé « The Journal », permettant de loguer plus rapidement et plus efficacement les différentes phases de démarrage. Les logs sont authentifiés afin de réduire les risques de corruptions en cas de piratage, ils sont portables, et l'outil comporte une gestion de saturation de l'espace disque afin de mieux gérer les traces. Tout service géré par systemd est automatiquement logué, sauf si celui-ci demande à ne pas l'être. Il est par défaut compatible avec un environnement réseau et peut passer par les protocoles standards tels quesyslog[4].
Systemd comporte un outil nommé « systemd-analyze », permettant d'analyser le temps de démarrage, de tracer les différentes étapes et de sortir les analyses sous forme de simples graphiques (formatSVG), permettant de comprendre simplement les goulets d'étranglement de la séquence de démarrage.
Systemd diffère de l'init deSystem V en :
En, lecode source d'udev a été intégré dans systemd[6]. systemd remplace donc System V et udev dans leurs fonctions respectives[7].
Il existe un fork de Debian, nomméDevuan, qui permet d'éviter d'utiliser systemd.
Gentoo développe eudev depuis 2013. Celui-ci est un fork d'udev dont le but est d'obtenir un meilleur support des systèmes qui n'utilisent pas systemd[15]. Pour les distributions binaires, leur choix, en, se résume à savoir si elles veulent supporter GNOME et dans ce cas si elles préfèrent utiliser systemd ou si, dans l'autre cas, elles préfèrent gérer la complexité supplémentaire d'une installation de GNOME sans systemd.
Le projet a essuyé de nombreuses critiques et suscité de fiévreux débats[20].
Pour certains développeurs, systemd est devenu un plus grand problème que celui qu'il est censé résoudre car au lieu de fournir à l'administrateur les moyens de créer des politiques de gestion du système, il fournit directement ses politiques[21], au point qu'on compare parfois systemd auService Host deWindows. Certains de ces détracteurs, utilisateurs de Debian, menacent même de faire unfork de leur distribution si celle-ci impose de fait l'utilisation de systemd en lieu et place de sysvinit[22]. Un fork nomméDevuan a été créé par les opposants qui n'obtenaient pas satisfaction, et la première version de Devuan est sortie fin[23].
Voici quelques critiques :
$ cat /etc/mtab
sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
udev /dev devtmpfs rw,nosuid,relatime,size=1963456k,nr_inodes=490864,mode=755 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=396480k,mode=755 0 0
/dev/sdb3 / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0
efivarfs /sys/firmware/efi/efivars efivarfs rw,nosuid,nodev,noexec,relatime 0 0
cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0
cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0
cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0
cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0
cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0
cgroup /sys/fs/cgroup/hugetlb cgroup rw,nosuid,nodev,noexec,relatime,hugetlb 0 0
systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=22,pgrp=1,timeout=0,minproto=5,maxproto=5,direct 0 0
mqueue /dev/mqueue mqueue rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
/dev/sda2 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
tmpfs /run/user/1000 tmpfs rw,nosuid,nodev,relatime,size=396480k,mode=700,uid=1000,gid=1000 0 0
gvfsd-fuse /run/user/1000/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0
/dev/sdb2 /media/fda/Sandisk480-UltraII fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096 0 0
Sur les autres projets Wikimedia :
| Histoire | ||
|---|---|---|
| Noyau Linux | ||
| Distributions | ||
| Applications | ||
| Personnalités liées | ||
| Médias | ||
| Mobile | ||
| Autres sujets | ||
Projets deFreedesktop.org | ||
|---|---|---|
| Composants | ||
| Bibliothèques | ||
| Frameworks | ||