Aller au contenu principal

systemctl

La découverte des systèmes de services et de leur statut sous Debian 12 (ou toute autre distribution Linux) est une compétence essentielle pour administrer un serveur ou un poste de travail. Sous Debian, les services sont généralement gérés par systemd, qui est le système d'initialisation et de gestion des services par défaut.

Comment vous pouvez explorer et comprendre les services et leur statut sous linux

1. Liste des services disponibles

Pour lister tous les services disponibles sur votre système, vous pouvez utiliser la commande suivante :

systemctl list-unit-files --type=service

Cela affichera tous les services installés sur votre système, ainsi que leur statut (activé, désactivé, statique, etc.).

2. Statut d'un service spécifique

Pour vérifier le statut d'un service spécifique (par exemple, apache2), utilisez la commande suivante :

systemctl status apache2

Cela vous donnera des informations détaillées sur le service, y compris s'il est actif ou non, les derniers messages de journal, et plus encore.

3. Démarrer, arrêter et redémarrer un service

  • Démarrer un service :

    sudo systemctl start apache2
  • Arrêter un service :

    sudo systemctl stop apache2
  • Redémarrer un service :

    sudo systemctl restart apache2
  • Recharger la configuration d'un service (sans redémarrer) :

    sudo systemctl reload apache2

4. Activer ou désactiver un service au démarrage

  • Activer un service pour qu'il démarre automatiquement au boot :

    sudo systemctl enable apache2
  • Désactiver un service pour qu'il ne démarre pas automatiquement au boot :

    sudo systemctl disable apache2

5. Journal des services

Pour consulter les logs d'un service, vous pouvez utiliser journalctl. Par exemple, pour voir les logs du service apache2 :

sudo journalctl -u apache2

Cela affichera les logs spécifiques à ce service. Vous pouvez également ajouter l'option -f pour suivre les logs en temps réel.

6. Services masqués

Parfois, un service peut être "masqué", ce qui signifie qu'il ne peut pas être démarré directement. Pour vérifier si un service est masqué :

systemctl is-enabled apache2

Si le service est masqué, vous verrez masked comme résultat.

7. Démasquer un service

Si un service est masqué et que vous souhaitez le démarrer, vous devez d'abord le démasquer :

sudo systemctl unmask apache2

8. Services dépendants

Pour voir les services dépendants d'un service particulier, vous pouvez utiliser :

systemctl list-dependencies apache2

Cela affichera une arborescence des services qui dépendent de apache2 ou dont apache2 dépend.

9. Services échoués

Pour voir les services qui ont échoué lors du démarrage, utilisez :

systemctl --failed

Cela vous donnera une liste des services qui n'ont pas pu démarrer correctement.

10. Redémarrer systemd

Dans de rares cas, vous pourriez avoir besoin de redémarrer systemd lui-même. Cela peut être fait en redémarrant le système, mais vous pouvez aussi recharger la configuration de systemd sans redémarrer :

sudo systemctl daemon-reload

Conclusion

La gestion des services sous Debian 12 avec systemd est puissante et flexible. Les commandes ci-dessus vous permettent de découvrir, surveiller et gérer les services sur votre système. Que vous soyez en train de configurer un serveur ou de dépanner un problème, ces outils sont essentiels pour tout administrateur système.