systemd est un ensemble de blocs de base pour les systèmes Linux. Il fournit un gestionnaire de système et de service qui exécute et démarre le reste du système sous le PID 1.
systemd offre des capacités de parallélisation agressives, utilise des sockets et l’activation du D-Bus pour démarrer des services, fournit un démarrage à la demande des démons, utilise des groupes de contrôle Linux pour suivre les processus, maintient les montages et les points auto-montés, et implémente une logique de contrôle de service bien conçue basée sur la dépendance des transactions. systemd prend en charge les scripts init SysV et LSB et peut remplacer sysvinit.
D’autres sections incluent les démons de journal, les utilitaires pour contrôler les configurations de base du système telles que les noms d’hôte, les dates, les lieux, la gestion d’une liste des utilisateurs connectés et des conteneurs et machines virtuelles exécutants, les comptes système, les annuaires d’exécution et les paramètres, ainsi que la gestion des configurations de démons pour des réseaux simples, la synchronisation temporelle réseau, le transfert de journaux et la résolution de noms.
Le fichier de configuration systemd existe dans les trois dossiers suivants :
/etc/systemd/system 存放系统启动的默认级别及启动的unit的软连接,优先级最高。
/run/systemd/system 系统执行过程中产生的服务脚本,优先级次之。
/usr/lib/systemd/system 存放系统上所有的启动文件,优先级最低。 Révision:
Profil de l’unité
Un fichier d’unité dans systemd est un fichier qui encode des informations sur les différentes unités que systemd peut gérer, y compris les services, sockets, appareils, etc. Ce guide se concentre sur les services, auquel cas le fichier unitaire avec lequel nous travaillons est le fichier .service. Le fichier de configuration du dispositif varnish.service contient des informations sur la manière dont systemd doit exécuter, surveiller et gérer le démon du vernis.
Le bloc [Unit] est généralement le premier bloc du fichier de configuration et sert à définir les métadonnées de l’Unit et leur relation avec les autres Units. Ses principaux domaines sont les suivants.
- Description : Une brève description
- Documentation : L’adresse du document
- Nécessite : D’autres unités dont dépend l’unité actuelle, et si elles ne fonctionnent pas, l’unité actuelle ne démarrera pas
- Souhaits : D’autres unités qui fonctionnent avec l’unité actuelle, si elles ne fonctionnent pas, l’unité actuelle ne se mettra pas en échec
- BindsTo : Similaire à Exiges, il spécifie une unité qui fait arrêter l’unité actuelle si elle se retire
- Avant : Si l’Unité spécifiée dans ce champ doit également être lancée, elle doit être lancée après l’Unité actuelle
- Après : Si l’Unité spécifiée dans ce champ doit également être lancée, elle doit être lancée avant l’Unité actuelle
- Conflits : L’unité spécifiée ici ne peut pas fonctionner en même temps que l’unité actuelle
- Condition... : Les conditions qui doivent être remplies pour que l’unité courante fonctionne, sinon elle ne fonctionnera pas
- Affirmer... : Les conditions à remplir pour que l’unité actuelle fonctionne, sinon la panne de démarrage sera signalée
[Install] est généralement le dernier bloc du fichier de configuration qui définit comment démarrer et s’il faut démarrer. Ses principaux domaines sont les suivants.
- WantedBy : Sa valeur est une ou plusieurs cibles, et lorsque l’unité actuelle est active (activée), le lien symmétrique est placé dans un sous-répertoire sous le dossier /etc/systemd/system avec le suffixe nom cible + .wantes
- RequiredBy : Sa valeur est une ou plusieurs cibles, et lorsque l’unité actuelle est active, le lien symmétrique sera placé dans un sous-répertoire sous le répertoire /etc/systemd/system avec le nom cible + le suffixe .required
- Alias : L’alias que l’Unité actuelle peut utiliser pour commencer
- Aussi : lorsque l’unité actuelle est activée, d’autres unités seront activées en même temps
Le bloc [Service] est utilisé pour configurer le Service, et seules les unités du type Service possèdent ce bloc. Ses principaux domaines sont les suivants.
- Type : Définit le comportement du processus au démarrage. Il possède les valeurs suivantes.
- Type=simple : La valeur par défaut, exécuter la commande spécifiée par ExecStart pour lancer le processus principal
- type=fork : Fork crée un processus enfant à partir du processus parent, qui sortira immédiatement après la création
- Type=oneshot : Processus unique, Systemd attendra la sortie du service courant avant de continuer à exécuter
- Type=dbus : Le service actuel commence via D-Bus
- type=notify : Lorsque le service en cours est lancé, Systemd sera notifié et poursuivra l’exécution
- type=idle : Le service courant ne s’exécutera que si d’autres tâches sont exécutées
- ExecStart : La commande pour lancer le service en cours
- ExecStartPre : La commande s’exécutait avant le lancement du service en cours
- ExecStartPost : La commande exécutée après le lancement du service en cours
- ExecReload : La commande exécutée lors du redémarrage du service en cours
- ExecStop : La commande exécutée lorsque le service actuel est arrêté
- ExecStopPost : Arrêter la commande exécutée lorsqu’elle est servie
- RestartSec : Le nombre de secondes entre les services automatiques redémarre le service en cours
- Redémarrage : Définit les circonstances dans lesquelles Systemd redémarrera automatiquement le service en cours, avec des valeurs possibles telles que toujours, sur succès, sur échec, sur-anormal, sur abort, sur watchdog
- TimeoutSec : Définit le nombre de secondes d’attente de Systemd avant d’arrêter le service en cours
- Environnement : Spécifier la variable environnement
Outil de gestion Systemctl
La gestion des programmes dans CentOS est essentiellement assurée par l’outil systemctl.
Service de démarrage :
systemctl start name.service
Arrêt du service :
systemctl stop name.service
Redémarrage du service :
systemctl restart name.service
Voir le statut :
systemctl statut name.service
Redémarrage conditionnel :
Si le service a été lancé auparavant, il sera relancé, et si le service n’est pas lancé, il ne sera pas exploité
systemctl try-restart name.service
Recharger ou redémarrer :
Rechargez d’abord, et si le rechargement échoue, redémarrez
systemctl reload-or-restart name.service
Rechargement ou redémarrage conditionnel :
systemctl reload-or-try-restart name.service
Détermine si le service peut être configuré par l’utilisateur pour lancer l’état
systemctl unmask name.service
SystemCTL mask name.service est interdit
Consultez le statut actuel d’activation du service :
La valeur de retour d’état de la commande service a commencé est 0 La valeur de retour de statut de la commande qui n’a pas été lancée est non-0
systemctl is-active name.service
Découvrez tous les services qui ont été activés :
-t Spécifie le type d’unité affichée.
--toutes affichent une liste d’informations plus détaillée.
-un équivalent --tous
Unités-liste SystemCTL
Service SystemCTL List-Units -T
SystemCTL list-unités -t service -a
Voir tous les services :
Systemctl List-unités -a
Voir tous les statuts de service :
Listes-unités-fichiers systemctl
-a 、--tous : Consultez l’état de tous les services
-t 、--type : Spécifie le type d’unité à observer
chargé : Le fichier de configuration a été chargé, chargé en mémoire
actif (en cours) : Exécutions qui sont traitées en continu une ou plusieurs fois
actif (sorti) : La configuration unique est réalisée avec succès
actif(en attente) : En cours, en attente d’un événement
inactive:不运行
enabled:开机启动
disabled:开机不启动
static:开机不启动,但可被另一个启用的服务激活
Utilisé pour indiquer à quels niveaux de fonctionnement le service est activé et désactivé
ls /etc/systemd/system/*.wants/sshd.service
SystemCTL list-unit-fichiers --type cible --tous
Pour régler le service pour qu’il ne démarre pas :
SystemCTL désactiver unité de nom de service
Vérifiez si le service est démarré et lancé :
SystemCTL is-activé name.service
Regardez les dépendances de service :
systemctl list-dependencies name.service SystemCTL list-depebdencies
Service de charge lourde :
systemctl daemon-reload
Tuez le processus :
Nom du processus de destruction sysCTL
Ressources:
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.
|