Systemd, gestionnaire de système
systemd est une suite logicielle qui fournit une gamme de composants système pour les systèmes d'exploitation Linux.
Le premier composant de systemd est le système d’initialisation, il a pour but d'offrir un meilleur cadre pour la gestion des dépendances entre services, de permettre le chargement en parallèle des services au démarrage et de réduire les appels aux scripts shell. [...] Il fournit également des remplacements pour divers daemons et utilitaires, notamment pour la gestion des périphériques, la gestion des connexions des utilisateurs, la gestion des connexions réseau et la journalisation des événements.
Lister les unités
Lister toutes les unités
systemctl list-units
Lister toutes les unités chargés mais inactives.
systemctl list-units --all
Lister toutes les unités de type service
systemctl list-units --type=service # ou : systemctl --type=service
Lister toutes les unités de type service actif ou inactif
systemctl --type=service --state=active /inactive
Liste des unités et voir le statut de démarrage automatique (enabled/disabled)
systemctl list-unit-files
Voir si un service spécifique est activé /désactivé au démarrage
systemctl is-enabled /is-disabled nom_service
Lister les unités en echec
systemctl --failed
Gestion des unités
Voir le statut d'un service
systemctl status <service>
Arrêter /stopper redémarrer un service
systemctl start /stop /restart <service>
Activer / désactiver un service (au démarrage du système).
systemctl enable /disable <service>
Recharger la configuration d'un service
systemctl reload <service>
journald, les journaux avec systemd
journalctl permet de visualiser rapidement les fichiers logs depuis le démarrage machine.
Voir tous les logs
journalctl
Voir tous les logs en temps réel
journalctl -f
Voir les logs d'un service en particulier
journalctl -u <service>
Voir les logs pour un pid donné
journalctl _PID=<n°-pid>
Voir les logs d'un programme donné
journalctl /usr/bin/<programme>
Voir les logs par niveau de priorité
journalctl -p merg /alert /crit /err /warning /notice /info /debug
Les cibles
Systemd utilise des cibles pour savoir quelles sont les programmes à exécuter ou arrêter suivant l'intérêt de la cible (les cibles sont constituées de la référence des différents services pris en charge par la cible).
poweroff.target
: cible permettant de stopper le système d'exploitation.rescue.target
: cible permettant de passer en mode maintenance.multi-user.target
: cible permettant de lancer le système d'exploitation en mode console.graphical.target
: cible permettant de lancer le système d'exploitation en mode graphique.reboot.target
: cible permettant de redémarrer le système d'exploitation
Commande pour connaitre la cible par défaut
systemctl get-default
Pour changer de cible
systemctl isolate <cible>
Configurer la cible par défaut
systemctl set-default <cible>