Autres langues english ; français ; |
Résumé : Pour dépanner votre installation, vérifier si tout fonctionne correctement ou simplement par curiosité, la journalisation est un sujet important. Le but de cette commande n’est pas de vous donner un manuel complet de toutes les options disponibles, mais vous donnera les plus importantes. |
Contents
La journalisation générale
Deux types de journalisation sont disponibles sur votre système :
- Les applications qui créent leurs propres fichiers de journalisation dans /var/log
- La journalisation système
Ce document concerne la journalisation système.
Services actifs
Démon, scripts, Les timers et bien d’autres choses sont activées au moyen des services systemD. Pour connaître la liste complète de tous les services qui sont actifs (exécuter, écouter, attendre) :
systemctl list-units
Si vous voulez une liste des services, ajoutez simplement --type service
Pour connaître l’état d’un service, exécuter :
systemctl status <nom du service>
p. ex.
systemctl status sshd
Il affichera non seulement l’état du service mais aussi les 10 dernières entrées du journal système.
Journal
Tout est enregistré dans une base de données qui peut être interrogée.
Pour voir tous les journaux :
journalctl
Remarque : La sortie n'est pas identique selon que la commande est lancée par l'utilisateur ou par l'administrateur. La plus complète est fournie à l'utilisateur root. |
Le journal complet d’un service spécifique :
journalctl -u <nom du service>
Vous pouvez être plus précis, par exemple :
journalctl -u <nom du service> --since 10:00 --until 12:00
journalctl -u <nom du service> --priority=err
Pour plus de détails, ajoutez les paramètres :
--catalog --full --output=verbose
Pour afficher les messages du noyau (similaire à l’ancienne commande dmesg)
journalctl --dmesg
Sessions de démarrage
Par défaut, la configuration de Mageia est un journal persistant, pour que vous puissiez voir la journalisation lors des redémarrages.
Pour afficher votre identifiant de démarrage actuel, exécutez la commande :
hostnamectl status|grep Boot
Pour voir toutes les sessions de démarrage :
journalctl --list-boots
Vous pouvez limiter votre recherche avec le paramètre
--boot=
Tail
Avec les fichiers journaux habituels, il est très fréquent de limiter la sortie avec la commande tail :
tail -n 20 <logfile>
qui fournit les 20 dernières lignes de la sortie.
Pour journalctl c’est la même chose :
journalctl -n 20
Aussi l’option suivi en direct est :
journalctl -f
Pour aller à la fin de la base de données de journalisation, utilisez le paramètre -e.
Paramètres cachés
L’utilitaire journactl a aussi des paramètres cachés, ils se désignent avec un tiret bas. Saisissez journactl _ et appuyez sur la touche tabulation.
Par exemple : vous voulez voir les messages d’un processus spécifique, utilisez simplement pgrep ou ps pour trouver le processus et afficher le fichier log :
journalctl _PID=<process id>
Export du journal
En cas de demande d'assistance, notamment, il peut être nécessaire d'exporter une part importante du journal.
Pour obtenir un fichier contenant une partie sélectionnée du journal :
journalctl -b >journal.txt
On génère ainsi un fichier journal.txt
qui contient l'export du journal, ici pour la session courante. On peut ajouter les options de sélection citées précédemment.
Pour transmettre ce fichier, il est utile d'en rendre l'utilisateur propriétaire :
chown <utilisateur:utilisateur> journal.txt
mv journal.txt /home/<utilisateur>
Pour partager ce fichier, après l'installation du paquet fpaste :
fpaste journal.txt
et fournir l'adresse URL qui est donnée en retour.
Configuration
C'est dans ce fichier /etc/systemd/journald.conf
– Voir journald.conf(5) pour les détails.
Limitation de la taille de l'historique
La taille est par défaut de 10% de la partition. C'est souvent beaucoup trop, et un historique trop long ralentit la commande journalctl
.
Dans le fichier de configuration file, par exemple, changer les lignes pertinentes suivantes :
SystemMaxUse=200M
RuntimeMaxUse=200M