[LINUX] Résumé des différences entre systemctl démarrer, arrêter, redémarrer, essayer-redémarrer, recharger, recharger-ou-redémarrer, recharger-ou-essayer-redémarrer

La sous-commande de systemctl concerne uniquement le rechargement start / stop du service, et bien qu'il y ait étrangement de nombreuses sous-commandes préparées, il y a de nombreux points que je ne comprends pas car les sous-commandes importantes sont insuffisantes et la dénomination et le comportement sont délicats. Je l'ai résumé.

Ce que vous voulez faire → Tableau récapitulatif des commandes correspondantes

Chose que tu veux faire COMMAND active inactive
Je veux le démarrer systemctl start xxx ne fais rien(exit 0) start (Starting,Started)
Je veux arrêter systemctl stop xxx stop (Stopping,Stoped) ne fais rien(exit 0)
Redémarrer si en cours d'exécution, démarrer si arrêté systemctl restart xxx restart (Stopping,Starting,Started) start (Starting,Started)
Redémarrez s'il est en cours d'exécution, ne faites rien s'il est arrêté systemctl try-restart xxx restart (Stopping,Starting,Started) ne fais rien(exit 0)
Recharger si en cours d'exécution(Support de rechargement d'unité requis), Erreur si arrêté systemctl reload xxx reload (Reloaded) Erreur(echo "Job for xxx.service invalid." >&2; exit 1)
Recharger si en cours d'exécution(Redémarrez si l'unité ne prend pas en charge le rechargement), Démarrer si arrêté systemctl reload-or-restart xxx reload (Reloaded) start (Starting,Started)
Recharger si en cours d'exécution(Redémarrez si l'unité ne prend pas en charge le rechargement), Erreur si arrêté systemctl reload-or-try-restart xxx reload (Reloaded) Erreur(echo "Job for xxx.service invalid." >&2; exit 1)
Recharger si en cours d'exécution(Redémarrez si l'unité ne prend pas en charge le rechargement)Ne rien faire si arrêté if systemctl -q is-active xxx; then systemctl reload-or-restart xxx; fi reload (Reloaded) ne fais rien(exit 0)

――Je veux te féliciter

Je veux que la sous-commande legacy alias qui apparaît dans bash-completion disparaisse des candidats à la complétion.

Les sous-commandes suivantes existaient selon la convention de certaines distributions, mais lorsqu'elles sont rassemblées dans systemctl, les alias correspondants suivants sont définis en interne comme «alias hérités» et peuvent être acceptés et utilisés, mais fondamentalement Il ne l'utilise pas.

Ces sous-commandes n'apparaissent pas dans la liste de systemctl --help, mais elles sont traitées comme si elles étaient sur man. Fondamentalement, je n'en ai pas besoin, mais en complétion comme bash-completion, il apparaît généralement comme une sous-commande dans la liste. Pour cette raison, même gratuitement, il existe de nombreuses sous-commandes liées au service et c'est difficile à comprendre, mais "Quelle est la différence entre cond reload et reload? Aide" ... Je pense que cela a gaspillé les ressources des ingénieurs du monde entier, et je veux qu'ils soient confus et ennuyés et disparaissent de la liste complémentaire. N'y a-t-il pas un cas où vous osez compléter cela et l'utiliser?

Guchi

Non, je sais qu'il y a beaucoup de bons points en termes de mécanisme par rapport à diverses choses dans le passé, mais je suis surpris que le groupe de sous-commandes du système d'exploitation de service que j'utilise le plus souvent soit subtil. Peut-être que je m'en fiche car je n'utilise status / start / stop / restart / reload que si je l'utilise normalement. Lorsque vous créez un fichier de configuration ansible, lorsque vous souhaitez utiliser recharger ou démarrer correctement tout en vérifiant l'état à l'avance, ou lorsque vous souhaitez juger de l'état approprié par l'état de fin, le nom de la sous-commande est organisé et mémorisé de manière logique. Je ne peux pas le faire et le comportement est bâclé, donc je suis inquiet et je finis par écrire tout en vérifiant le document et le comportement réel à chaque fois.

Recommended Posts

Résumé des différences entre systemctl démarrer, arrêter, redémarrer, essayer-redémarrer, recharger, recharger-ou-redémarrer, recharger-ou-essayer-redémarrer
Résumé des différences entre PHP et Python
Un résumé approximatif des différences entre Windows et Linux
Résumé des différences entre Ruby on rails et Django ~ Bases ~
Résumé des différences entre Python et PHP (tableau de comparaison des principaux éléments)