Cibles systématiques
Décrit comment les cibles système sont mappées aux niveaux d'exécution et comment inspecter ou modifier l'état du système.
En utilisant des cibles, vous pouvez contrôler systemd afin qu'il démarre uniquement les services requis à une fin spécifique.
Par exemple, vous réglez la cible par défaut à multi-user.target sur un serveur de production afin que l'interface utilisateur graphique ne soit pas utilisée lors du démarrage du système. Dans un cas où vous devez dépanner ou effectuer des diagnostics, vous pouvez envisager de régler la cible à 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 le système X Window pour graphical.target, et arrête les deux services pour rescue.target.
Cibles système-état et cibles de niveau d'exécution équivalentes affiche les cibles système-état couramment utilisées et les cibles de niveau d'exécution équivalentes.
|
Cibles de l'état du système |
Cibles de niveau d'exécution équivalentes |
Description |
|---|---|---|
|
|
|
Configurez un système multiutilisateur avec un gestionnaire de réseau et d'affichage. |
|
|
|
Configurer un système multiutilisateur non graphique avec réseau. |
|
|
|
Arrêtez et mettez le système hors tension. |
|
|
|
Arrêtez et redémarrez le système. |
|
|
|
Mettre en place une coquille de sauvetage. |
Notez que les cibles runlevel* sont mises en oeuvre 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 de l'état du système
Affiche 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 de 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 montre que cette cible dépend d'autres cibles actives, notamment network et sound pour la fonctionnalité de réseau et de son.
Utilisez l'option --all pour inclure des cibles inactives dans la liste.
Pour plus d'informations, consultez les pages de manuel systemctl(1) et systemd.target(5).
Modification des cibles par défaut et actives de l'état du système
Explique comment changer la 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 système-état 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 de système active courante, utilisez la commande systemctl isolate, par exemple :
sudo systemctl isolate multi-user.target
Pour plus d'informations, consultez la page de manuel systemctl(1).