Passer au contenu principal
Accéder à l'ensemble des vidéos de ce cours en ligne en illimité à partir de 99€HT/an. Voir nos offres

Linux Initiation + Préparation LPI 101

Architecture système : matériel, démarrage et cibles systemd

Découvrir les unités systemd, cibles et sockets

Accéder à l'ensemble des vidéos de ce cours en illimité à partir de 99€ HT/an.

Architecture système : matériel, démarrage et cibles systemd
00:05:24

Script

Objectif et utilité

Vous allez découvrir la notion d'unité systemd, et comprendre les trois types que vous rencontrerez le plus après les services : les timers, les cibles (targets) et les sockets.

Prérequis et point de départ

  • Voir « Comprendre les services et le rôle de systemd ».

Explication et démarche

Les unités

Une unité (unit) est le nom générique des objets que systemd manipule. Les services sont un type d'unité. Pour lister les types disponibles :

sudo systemctl list-units --type=help

Environ 90 % du temps, vous interagirez avec des services, et plus rarement avec des timers ou des cibles.

Timers

Ils exécutent des tâches à une certaine périodicité ou à un moment donné.

Cibles (targets)

Une cible définit un état à atteindre : elle est atteinte quand toutes les unités qui la composent ont démarré. Chaque étape du démarrage du système est matérialisée par une cible.

Exemple : dans /etc/systemd/system, le dossier multi-user.target.wants contient les services qui doivent être démarrés pour considérer comme atteinte la cible multi-user.target, l'étape à partir de laquelle plusieurs utilisateurs peuvent se connecter.

Sockets

Ne les confondez pas avec les sockets TCP ou UDP, même si une socket systemd ouvre bien un port réseau.

Imaginez un serveur qui héberge une centaine de services réseau, chacun en attente de requêtes rares : tous consomment des ressources à attendre. Une socket systemd garde le port ouvert (par exemple le port 80) et ne démarre le service correspondant qu'à l'arrivée d'une connexion.

Résultat attendu et vérification

systemctl list-units --type=help affiche la liste des types d'unités.

Points de vigilance et bonnes pratiques

  • Ne cherchez pas à tout maîtriser : services d'abord, puis timers et cibles.

À retenir et mise en pratique

  • Unité = objet géré par systemd ; services, timers, cibles, sockets…
  • *.target.wants : services requis par une cible.

Exercice. Listez le contenu de /etc/systemd/system/multi-user.target.wants et identifiez trois services démarrés automatiquement.

Critère de réussite : vous y trouvez par exemple cron.service et ssh.service.

Référence

  • Page de manuel systemd.unit(5) : https://manpages.debian.org/systemd.unit.5
  • Pages systemd.target(5) et systemd.socket(5) : https://manpages.debian.org/systemd.socket.5