Existe-t-il un moyen de me systemd
dire l' ordre approximatif dans lequel il fermera les services lorsque j'arrêterai proprement l'ensemble du système? Comme cela systemd
fermera les choses en parallèle, j'apprécie qu'il n'y ait aucun moyen de connaître l'ordre exact, mais il serait toujours très utile de savoir quelles contraintes systemd
imposeront à la séquence d'arrêt, de préférence dans une sorte de visualisation facile à comprendre.
La motivation est que pour le développement et le débogage de fichiers de service, il serait beaucoup plus pratique d'obtenir cette liste prédite à l'avance, plutôt que d'avoir à faire un véritable arrêt, puis à redémarrer et à inspecter les journaux chaque fois que je veux déterminer quel impact une modification d'un fichier d'unité de service ou d'un autre aspect de la configuration de systemd aura sur l'ordre d'arrêt.
J'espérais que quelque chose comme
systemctl list-dependencies --before shutdown.service
ferait le travail, mais il n'émet que:
shutdown.service
la source
shutdown.target
nonshutdown.service
. Cependant, cela ne me donne toujours pas la liste ordonnée que j'ai demandée, mais plutôt une très courte liste, voire une liste vide sur certains systèmes.systemctl list-dependencies --after shutdown.target
... au moins qui trouvera tout ce que la première commande ne contient pas. Il est déroutant aussi parceshutdown.target
est en train , mais toutes les autres unités sont l' arrêt , et dans ce cas , il n'a pas d' importance si vous avez un « avant » ou « après » commande; l'arrêt se fait avant le démarrage dans les deux cas.L'ordre d'arrêt est généralement l'inverse de l'ordre de démarrage.
Cela dit, les démons reçoivent tous un signal d'arrêt et leur mise à l'arrêt et leur sortie prendront plus ou moins de temps.
Si je ne m'abandonne qu'à systemd, je ne pense pas qu'il soit possible de prévoir utilement quels services se termineront dans quel ordre. De plus, les dépendances contrôleront certaines séquences.
la source