Cibles système
Explique comment les cibles systemd sont mappées avec les niveaux d'exécution et comment inspecter ou modifier l'état du système.
En utilisant des cibles, vous pouvez contrôler systemd de sorte qu'il démarre uniquement les services requis à une fin spécifique.
Par exemple, vous définissez la cible par défaut sur multi-user.target sur un serveur de production de sorte que l'interface utilisateur graphique ne soit pas utilisée lors de l'initialisation du système. Si vous avez besoin de dépanner ou d'effectuer des diagnostics, vous pouvez envisager de définir la cible sur rescue.target, où seul root se connecte au système pour exécuter le nombre minimal de services.
Chaque niveau d'exécution définit les services que systemd arrête ou démarre. Par exemple, systemd démarre les services réseau pour multi-user.target et X Window System pour graphical.target, et arrête les deux services pour rescue.target.
La section System-State Targets and Equivalent Runlevel Targets affiche les cibles d'état système couramment utilisées et les cibles de niveau d'exécution équivalentes.
|
Cibles d'état système |
Cibles de niveau d'exécution équivalentes |
Description |
|---|---|---|
|
|
|
Configurez un système multiutilisateur avec le gestionnaire de réseau et d'affichage. |
|
|
|
Configurez un système multiutilisateur non graphique avec mise en réseau. |
|
|
|
Arrêtez et mettez le système hors tension. |
|
|
|
Arrêtez puis réinitialisez le système. |
|
|
|
Configurez un shell de secours. |
Les cibles runlevel* sont implémentées en tant que liens symboliques.
Pour plus d'informations, consultez la page de manuel systemd.target(5).
Affichage des cibles par défaut et actives à l'état du système
Indique comment interroger la cible par défaut du système et répertorier toutes les cibles actives avec systemctl.
Pour afficher la cible d'état système par défaut, utilisez la commande systemctl get-default :
systemctl get-default
graphical.target
Pour afficher les cibles actives sur un système, utilisez la commande systemctl list-units --type target :
systemctl list-units --type target [--all]
UNIT LOAD ACTIVE SUB DESCRIPTION
basic.target loaded active active Basic System
cryptsetup.target loaded active active Local Encrypted Volumes
getty.target loaded active active Login Prompts
graphical.target loaded active active Graphical Interface
local-fs-pre.target loaded active active Local File Systems (Pre)
local-fs.target loaded active active Local File Systems
multi-user.target loaded active active Multi-User System
network-online.target loaded active active Network is Online
network-pre.target loaded active active Network (Pre)
network.target loaded active active Network
nfs-client.target loaded active active NFS client services
nss-user-lookup.target loaded active active User and Group Name Lookups
paths.target loaded active active Paths
remote-fs-pre.target loaded active active Remote File Systems (Pre)
remote-fs.target loaded active active Remote File Systems
rpc_pipefs.target loaded active active rpc_pipefs.target
rpcbind.target loaded active active RPC Port Mapper
slices.target loaded active active Slices
sockets.target loaded active active Sockets
sound.target loaded active active Sound Card
sshd-keygen.target loaded active active sshd-keygen.target
swap.target loaded active active Swap
sysinit.target loaded active active System Initialization
timers.target loaded active active Timers
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
24 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
La sortie d'un système avec la cible graphical active indique que cette cible dépend d'autres cibles actives, notamment network et sound pour la mise en réseau et la fonctionnalité sonore.
Utilisez l'option --all pour inclure les cibles inactives dans la liste.
Pour plus d'informations, reportez-vous aux pages de manuel systemctl(1) et systemd.target(5).
Modification des cibles d'état système par défaut et actives
Explique comment changer de cible d'initialisation par défaut et isoler une autre cible pendant l'exécution du système.
Utilisez la commande systemctl set-default pour modifier la cible d'état système par défaut :
sudo systemctl set-default multi-user.target
Removed /etc/systemd/system/default.target.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/multi-user.target
Cette commande modifie la cible à laquelle la cible par défaut est liée, mais ne modifie pas l'état du système.
Pour modifier la cible système active actuelle, utilisez la commande systemctl isolate, par exemple :
sudo systemctl isolate multi-user.target
Pour plus d'informations, consultez la page de manuel systemctl(1).