GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment gérer les services Linux avec la commande systemctl

Linux est un système multitâche optionnel comme presque tout le monde de nos jours. Et pour en faire une véritable expérience, de nombreuses applications sont gérées en arrière-plan via des services. Eh bien, à divers moments et circonstances, l'utilisateur du système doit démarrer, arrêter ou redémarrer ces services. C'est pourquoi, dans cet article, vous apprendrez à gérer les services sous Linux avec la commande systemctl.

De plus, dans cet article, nous vous montrerons de nombreux utilitaires que la commande peut faire. En plus de cela, nous expliquerons ce qu'est un service et comment nous sommes arrivés à systemctl.

Quelle est la différence entre systemd et la commande systemctl ?

Avant de jeter un œil à l'utilisation de systemctl commande, c'est une bonne idée d'établir la différence entre la commande et systemd .

Avec pour objectif principal d'optimiser la gestion et le chargement des services Linux, systemd est né. Il remplace l'ancien Sysvinit non sans une dose de controverse.

Systemd est composé d'une série de démons et de scripts compatibles SysV et LSB. Il permet également le démarrage des démons à la demande, la surveillance des processus avec l'utilisation des groupes de contrôle Linux.

D'autre part, systemctl est une commande utilisée pour gérer les services système. Cela fonctionne comme une sorte d'interface pour systemd . Maintenant c'est le cas. Nous allons utiliser systemctl .

Gestion des services sous Linux avec la commande systemctl

Si vous utilisez une distribution Linux moderne, vous avez installé et exécuté systemd et donc le systemctl commande.

La commande elle-même est très facile à utiliser. Par conséquent, la syntaxe de base est la suivante.

systemctl [OPTIONS...] {COMMAND} ...

Comme la plupart des commandes sous Linux, il a des options qui modifient le comportement du système. Si vous affichez le systemctl help, vous verrez beaucoup d'options et de commandes disponibles.

:~$ systemctl --help

C'est parce que bien que systemctl est utilisé pour gérer les services système, il vous permet également d'effectuer d'autres opérations, telles que l'arrêt ou le redémarrage de votre ordinateur.

Cependant, vous étudierez la gestion des services avec systemctl à travers les situations.

1. Lister les services du système

Tout d'abord, vous devez tenir compte du fait que la commande systemctl doit être utilisé en tant que superutilisateur. Ou au moins que votre utilisateur peut utiliser sudo . Ensuite, ouvrez un terminal et listez les services système sous systemd , exécutez la commande suivante

:~$ sudo systemctl

Comme vous pouvez le voir sur la sortie d'écran, c'est un peu lourd. Mais vous pouvez toujours visualiser les services du système.

Cependant, il est possible d'ajouter la sous-commande list-unit et un filtre pour améliorer la présentation des résultats.

:~$ sudo systemctl list-units --type=service --all

Cette image présente des résultats plus clairs. Les colonnes les plus importantes sont la charge, active et les sous-colonnes, où il est indiqué s'il est actif dans le système et s'il est en cours d'exécution.

Si vous ne souhaitez afficher que celles qui sont en cours d'exécution, modifiez simplement la commande précédente pour celle-ci :

:~$ sudo systemctl list-units --type=service --state=running

2. Démarrer, arrêter et redémarrer les services avec la commande systemctl

Maintenant que vous savez quels services se trouvent dans votre système, vous pouvez choisir de les démarrer, s'ils sont arrêtés, ou de les arrêter s'ils sont en cours d'exécution.

Pour démarrer un service, utilisez cette commande :

:~$ sudo systemctl start [service]

Remplacez service par le nom du service. Dans le cas de MySQL, la commande serait la suivante :

:~$ sudo systemctl start mysql

Au contraire, si vous voulez l'arrêter, utilisez la sous-commande stop et le nom du service.

:~$ sudo systemctl stop [service]

En suivant l'exemple de MySQL, cela ressemblerait à ceci :

:~$ sudo systemctl stop mysql

D'autre part, il arrive parfois que vous deviez apporter des modifications à la configuration de certains services. Pour que ces changements soient appliqués, vous devez le redémarrer.

:~$ sudo systemctl restart [service]

Le service peut également être rechargé. Dans ce cas, ne reconfigurez que partiellement le service. La sous-commande est "recharger".

:~$ sudo systemctl reload [service]

Pour le redémarrer complètement, vous devez utiliser l'option de redémarrage.

3. Activer et désactiver le service pour démarrer ou non au démarrage du système

Lorsqu'un service tiers est très important pour le fonctionnement de notre serveur ou de certaines de ces applications, il est pratique de demander à systemd de le démarrer avec le système.

Pour cela, suivez simplement la syntaxe suivante :

:~$ sudo systemctl enable [service]

Remplacez donc [service] par le nom du service dont vous avez besoin.

Pour le désactiver, utilisez la sous-commande disable.

:~$ sudo systemctl disable [service]

De cette façon, vous pouvez définir quels services démarreront automatiquement et lesquels ne le seront pas.

4. Masquer et démasquer un service avec Systemctl

Si vous souhaitez qu'un service soit désactivé mais ne puisse pas être activé automatiquement ou manuellement, il doit être masqué. Ne vous inquiétez pas, il peut toujours être démasqué et réactivé.

Donc, pour masquer un service, utilisez la commande suivante

:~$ sudo systemctl mask [service]

Et pour inverser la commande précédente :

:~$ sudo systemctl unmask [service]

Cela ajoute une couche de sécurité supplémentaire pour la gestion du serveur. Idéal pour le travail partagé. Parce que pour démarrer ou activer un service masqué, vous devez d'abord le démasquer.

5. Vérifier l'état d'un service avec la commande systemctl

Il est souvent utile de connaître l'état d'un service. Ceci afin de détecter d'éventuelles erreurs.

Pour cela, utilisez la commande suivante :

:~$ sudo systemctl status [service]

Si le service est en cours d'exécution, vous verrez une image similaire à celle-ci.

Sinon, vous verrez quelque chose comme ça.

Ceci est très utile pour savoir si un certain service est en cours d'exécution.

Conclusion

La gestion des services peut être un peu compliquée depuis le terminal, mais ce n'est pas le cas. Et cela aide notre système à être géré correctement par l'utilisateur.

Dans cet article, vous avez utilisé la commande systemctl pour la gestion de base de ces services. Cependant, les exemples que vous venez d'observer sont les cas les plus courants, ils suffiront donc.


Ubuntu
  1. Comment utiliser la commande su sous Linux avec des exemples

  2. Comment utiliser la commande sudo sous Linux

  3. Comment utiliser la commande w sous Linux avec des exemples

  4. Comment gérer les services Systemd avec Systemctl sous Linux

  5. Comment utiliser la commande Systemctl pour gérer les services Systemd

Comment gérer les mots de passe Linux avec la commande pass

Comment gérer les fichiers depuis le terminal Linux

Comment maîtriser la commande Linux Tree

Comment utiliser la commande Linux Top

Comment rechercher des fichiers avec la commande fd sous Linux

Comment modifier des groupes avec la commande groupmod sous Linux