Commande systemctl

« Back to Glossary Index

La commande systemctl est l’outil central pour contrôler le système d’initialisation systemd, qui est désormais le standard sur la majorité des distributions linux (debian, ubuntu, centos, fedora). Elle permet de gérer les services, de vérifier leur état et de configurer le démarrage de la machine.

les concepts clés

avant d’entrer dans les commandes, il est utile de comprendre deux termes :

  • unit (unité) : c’est n’importe quelle ressource que le système sait gérer (un service, un point de montage, un périphérique). les plus courants sont les .service.
  • target (cible) : c’est un groupe d’unités qui définit l’état du système (ex: le mode multi-utilisateur ou le mode graphique).

1. gestion des services (unités)

ces commandes agissent immédiatement sur la session en cours.

actioncommandedescription
démarrersystemctl start [service]lance le service immédiatement.
arrêtersystemctl stop [service]coupe le service immédiatement.
redémarrersystemctl restart [service]arrête puis relance le service.
rechargersystemctl reload [service]recharge la configuration sans couper le service.
statutsystemctl status [service]affiche si le service tourne et les dernières logs.

exemple :

sudo systemctl restart apache2 systemctl status sshd

2. gestion de l’activation au démarrage

ces commandes ne lancent pas le service tout de suite, elles configurent ce qui doit se passer au prochain boot.

  • activer :sudo systemctl enable [service]
    • crée un lien symbolique pour que le service se lance automatiquement au démarrage.
  • désactiver :sudo systemctl disable [service]
    • empêche le service de démarrer au prochain boot.
  • masquer :sudo systemctl mask [service]
    • rend le service impossible à démarrer, même manuellement ou par une dépendance.

3. inspection et filtrage

pour voir ce qui se passe sur votre serveur :

  • lister les unités actives : systemctl list-units
  • lister tous les services installés (actifs ou non) : systemctl list-unit-files --type=service
  • vérifier si un service a échoué : systemctl --failed

4. gestion du système (power management)

systemctl remplace aussi les anciennes commandes de gestion d’énergie.

exemples concrets d’utilisation

vérifier pourquoi un service ne démarre pas

si vous gérez un serveur web et qu’il tombe, la première étape est : systemctl status nginx si les informations sont incomplètes, vous pouvez coupler cela avec journalctl (le gestionnaire de logs de systemd) : journalctl -u nginx -e

automatiser un script maison

si vous créez un script de sauvegarde automatique, vous placerez un fichier .service dans /etc/systemd/system/, puis vous ferez : sudo systemctl daemon-reload (pour que le système lise le nouveau fichier) sudo systemctl enable ma-sauvegarde.service

« Revenir à l'index du glossaire

Entreprise de services numérique spécialisée dans la cybersécurité / le web et la formation.

Nous contacter :
contact@glorydev.fr

Nous envoyer un email :

Perpignan

Lieu :

Suivez-nous :