Comment afficher les journaux Systemctl

Comment Afficher Les Journaux Systemctl



Le systemd est l'un des systèmes d'initialisation largement adoptés sous Linux. Le principal avantage de systemd est sa capacité à gérer les journaux système. Il collecte tous les messages du noyau et les processus utilisateur dans un journal appelé Journal . Le journalisé est le démon qui capture et gère les journaux dans un fichier binaire. Ce démon présente l'avantage clé de stocker les données sous une forme structurée et indexée, ce qui facilite leur accès et leur analyse via le journalctl utilitaire.

Dans ce guide, j'expliquerai comment afficher les journaux système sous Linux à l'aide de différents utilitaires de ligne de commande.

Note: Les commandes mentionnées dans ce guide sont exécutées sur Ubuntu. Ils fonctionneront sans erreur sur toutes les distributions Linux fournies avec le système d'initialisation systemd.







Méthodes pour afficher les journaux systemctl

Il existe deux approches pour afficher les journaux système sous Linux :



Le systemctl donne les journaux spécifiques au service les plus récents, tandis que journalctl donne des journaux détaillés à l'échelle du système de tous les services et du service spécifique.



J'explorerai les deux utilitaires pour afficher les journaux système. Mais d’abord, comprenons la principale différence entre les commandes systemctl et journalctl.





Qu'est-ce que systemctl

Systemctl est un utilitaire de ligne de commande qui gère les services systemd, tels que l'activation ou la désactivation du service et l'affichage de l'état. Le statut systemctl La commande imprime également quelques lignes de journal du service au bas de la sortie, et ce journal se trouve après le démarrage récent. Cependant, ces lignes de journal du service datent uniquement d'après le démarrage en cours.

Qu'est-ce que journalctl

Le journalctl est un utilitaire de ligne de commande utilisé pour imprimer les journaux collectés par systemd. Comparé à systemctl, il fournit une sortie détaillée avec des options de filtrage. Cet utilitaire est conçu pour :



  • Lire les journaux (le journal le plus ancien vient en premier)
  • Surveiller les journaux
  • Filtrer les journaux en fonction de l'heure, du service ou de l'utilisateur

Le systemd collecte les journaux du noyau, des services et des démons et les stocke dans un emplacement centralisé.

Comment afficher le journal d'un service à l'aide de systemctl

La syntaxe générale pour retrouver le log d'un service en utilisant le systèmectl l'utilitaire est mentionné ci-dessous.

statut systemctl [ Nom du service ]

Par exemple, pour afficher les informations du journal du smbd.service utilisez la commande ci-dessous.

statut systemctl smbd.service

Pour obtenir une sortie sans pagination, ajoutez le –pas de téléavertisseur option dans la commande.

statut systemctl smbd.service --pas de téléavertisseur

Comment afficher le journal d'un service à l'aide de journalctl

Pour afficher le journal d'un service spécifique de systemd, utilisez journalctl avec le -dans nom de la commande et du service ou de l’unité.

journalctl -dans [ Nom du service ]

Dans la commande ci-dessus, le -dans drapeau, abréviation de -unité est utilisé pour filtrer le journalctl sortie par un nom d’unité.

Par exemple, pour imprimer le journal du smbd démon, je remplacerai le [nom de l'unité] avec smbd.service .

journalctl -dans smbd.service

Dans la sortie, on peut voir que l'entrée la plus ancienne apparaît en premier, puis est enregistrée après chaque démarrage.

Pour obtenir la dernière entrée, utilisez d'abord -C'est court pour –fin du téléavertisseur.

journalctl -dans smbd.service -C'est

Si vous souhaitez omettre la pagination de la sortie, ajoutez simplement le –pas de téléavertisseur dans les commandes mentionnées ci-dessus.

Pour imprimer en continu les entrées du journal en temps réel -F court pour -suivre .

journalctl -dans smbd.service -F

Le filtrage peut être étendu en utilisant l'indicateur -b, raccourci pour -botte , qui imprime les journaux en fonction du démarrage en cours.

journalctl -dans [ nom de l'unité ] -b

Imprimons les journaux du smbd.service du démarrage récent.

journalctl -dans smbd.service -b

Le résultat ci-dessus ressemble au résultat que nous obtenons en utilisant le statut systemctl commande.

Pour obtenir un aperçu détaillé du journal, utilisez le -X court pour -catalogue option.

journalctl -dans smbd.service -X

Cela ajoutera une brève description du journal.

Désormais, pour imprimer les journaux en fonction du temps à l'aide de journalctl, il existe deux options : -S court pour -depuis et -DANS court pour -jusqu'à .

journalctl -dans [ nom de l'unité ] -S '[année-mois-jour] [heures:minutes:secondes]'

Par exemple, pour afficher les journaux de l'unité smbd depuis 2024:01:30 12:05:00 .

journalctl -dans smbd.service -S '2024:01:30 12:05:00'

Conclusion

Pour afficher les journaux systemd d'un service, il existe deux utilitaires principaux, journalctl et systemctl. Le journalctl est spécialement conçu pour afficher les journaux de systemd. Cependant, le systemctl a également la possibilité d'imprimer le journal du service. Pour imprimer le journal d'une utilisation d'un service, journalctl -u [nom de l'unité] et systèmectl [nom de l'unité].