Les journaux sont extrêmement utiles lors du dépannage de problèmes de système, d'application ou de réseau. Les informations capturées dans les fichiers journaux peuvent également être analysées pour découvrir des modèles qui peuvent vous aider à prendre des décisions éclairées en tant qu'administrateur système.
Ce guide explique brièvement comment vous pouvez afficher les fichiers journaux standard sur les serveurs Ubuntu Linux.
Commandes importantes pour travailler avec les fichiers journaux
Sur les serveurs Ubuntu Linux, les journaux sont normalement stockés au format texte brut. Par conséquent, il est important que vous connaissiez les commandes Linux de base suivantes pour vous déplacer dans le système de fichiers et travailler avec des fichiers texte via le terminal Ubuntu.
cd – changer de répertoire
ls – afficher le contenu d'un répertoire
cp – copier des fichiers ou des dossiers
vm – renommer/déplacer des fichiers ou des dossiers
nano – éditeur de texte basé sur la console
moins – afficher le contenu d'un fichier texte une page à la fois
tête – afficher les 10 premières lignes d'un fichier texte
queue – voir les 10 dernières lignes d'un fichier texte
grep – rechercher des mots-clés spécifiques dans un fichier texte ou des données de sortie
Emplacement des fichiers journaux sur les serveurs Ubuntu
Fondamentalement, les fichiers journaux sont stockés sous /var/log répertoire sur les serveurs Ubuntu. Exécutez la commande ci-dessous pour changer le répertoire en /var/log.
$ cd /var/log
Maintenant, vous pouvez répertorier le contenu de /var/log comme suit.
$ ls
Comme le montre la figure 1 ci-dessous, le répertoire /var/log contient plusieurs fichiers journaux qui peuvent être largement classés en journaux système et journaux d'application.
Figure 1 :Liste des fichiers journaux sur le serveur Ubuntu
Journaux système
Les journaux système contiennent des informations sur le fonctionnement du système Ubuntu; y compris les journaux d'autorisation, les journaux du noyau, le tampon circulaire du noyau et les événements généraux du système.
Journaux d'autorisation
Les journaux d'autorisation sont stockés dans /var/log/auth.log . C'est ici que vous trouverez des informations sur les tentatives d'autorisation des utilisateurs ; y compris l'utilisation de la commande sudo.
Vous pouvez exécuter la commande ci-dessous pour inspecter le contenu du fichier auth.log.
$ sudo less /var/log/auth.log
Remarque : Appuyez sur la barre d'espace de votre clavier pour faire défiler de page en page. Appuyez sur q pour quitter.
Vous pouvez également utiliser la commande grep pour filtrer les informations dans les journaux. Voici un exemple.
$ sudo less /var/log/auth.log | grep olu
Les informations contenues dans l'exemple de sortie ci-dessous indique qu'il y a eu une connexion à distance réussie à mon serveur Ubuntu via ssh par l'utilisateur olu.
1er février 15:44:24 Ubuntu sshd[1594] :clé publique acceptée pour olu à partir du port 105.0.0.100 35233 ssh2 :RSA SHA256:B3zi4x3gdF89wm0GZw+fsAkhckLEsx8fJ0GJiU80CXH 1er février 15:44:24 Ubuntu sshd[1594] :pam_unix(sshd:session) :session ouverte pour l'utilisateur olu par (uid=0) 1er février 15:44:24 Ubuntu systemd-logind[747] :Nouvelle session 2 de l'utilisateur olu. 1er février 15:44:24 Ubuntu systemd :pam_unix(systemd-user:session) :session ouverte pour l'utilisateur olu par (uid=0) |
Journaux du noyau
Les journaux du noyau sont conservés dans /var/log/kern.log . Ces informations sont utiles pour résoudre les erreurs du noyau. Le noyau contrôle tout dans le système d'exploitation; y compris la gestion des processus, la gestion de la mémoire et la gestion des périphériques.
Utilisez la commande suivante pour afficher le contenu du fichier kern.log une page à la fois.
$ sudo less /var/log/kern.log
Ou essayez ceci pour afficher les 10 premières lignes du fichier kern.log.
$ sudo head /var/log/kern.log
Trouvez des informations spécifiques dans kern.log.
$ grep memory /var/log/kern.log
Tampon circulaire du noyau
Le tampon en anneau du noyau contient des informations sur le matériel du noyau. Les informations sont enregistrées dans /var/log/dmesg et peut être affiché en utilisant le dmesg commande. Ces informations incluent tous les périphériques détectés au démarrage du système.
Vous pouvez l'utiliser pour résoudre les problèmes liés aux composants matériels du serveur. Exécutez la commande ci-dessous pour afficher l'intégralité du contenu du tampon circulaire du noyau.
$ dmesg
Essayez la commande suivante pour afficher les 10 dernières lignes du tampon circulaire du noyau.
$ dmesg | tail
Ou filtrez des mots clés spécifiques à l'aide de grep.
$ dmesg | grep cpu
Journaux système généraux
Ici, nous allons parler de syslog et journalctl
Syslog
Syslog est un mécanisme de journalisation qui stocke les événements généraux du système dans /var/log/syslog . Les informations stockées ici peuvent inclure des événements que vous ne trouverez peut-être pas dans d'autres fichiers journaux.
Exécutez la commande ci-dessous pour afficher le contenu du fichier syslog page par page.
$ sudo less /var/log/syslog
Vous pouvez également rechercher des mots-clés spécifiques en utilisant le grep commande comme suit.
$ sudo grep failed /var/log/syslog
Journalctl
La commande journalctl simplifie le processus d'examen des journaux du serveur. Plutôt que de parcourir les fichiers journaux individuels, vous pouvez utiliser journalctl pour trouver et filtrer rapidement les informations dont vous avez besoin.
La commande ci-dessous affiche toutes les entrées du journal, de la plus ancienne à la plus récente.
$ journalctl
La commande suivante affiche des messages d'avertissement.
$ journalctl -p warning
Vous pouvez afficher uniquement les messages du noyau comme suit.
$ journalctl --dmesg
Vous pouvez rechercher des mots-clés spécifiques en combinant le grep commander et afficher les résultats page par page en utilisant less .
$ journalctl | grep ssh | less
Afficher les informations du journal depuis une date spécifique.
$ journalctl --since=2021-02-01
Ou affichez les informations du journal depuis une heure spécifique.
$ journalctl --since=12:00
Vous pouvez également taper journalctl puis appuyez sur la touche de tabulation de votre clavier pour voir les options disponibles.
Journaux des applications
Plusieurs applications stockent les informations de journal sous /var/log . Par exemple, dans la figure 1 ci-dessus, le clamav Le répertoire contient les fichiers journaux relatifs à l'application anti-malware ClamAV.
Voici quelques exemples d'applications ou de services populaires et où leurs informations de journal sont stockées.
Apache web server logs - /var/log/apache2
NGINX web server logs - /var/log/nginx
Printing system (CUPS) logs - /var/log/cups
Autres journaux utiles
Certains fichiers journaux tels que lastlog , wtmp peut ne pas être lu directement par l'homme. Vous trouverez ci-dessous une brève explication du type d'informations contenues dans ces fichiers et de la manière dont vous pouvez les afficher.
dernier journal
Les informations contenues dans /var/log/lastlog concerne les utilisateurs et leur connexion la plus récente au serveur Ubuntu. Vous auriez besoin d'utiliser le lastlog commande pour y accéder comme suit.
$ lastlog
wtmp
La var/log/wtmp le fichier contient des enregistrements de connexion complets.
Exécutez le dernier commande pour afficher une liste des derniers utilisateurs connectés. Vous pouvez également voir des informations sur le démarrage/redémarrage du système.
$ last
Exécutez le qui commande pour voir qui est actuellement connecté.
$ who
Le w La commande vous montre qui est actuellement connecté et ce qu'il fait sur le serveur Ubuntu.
$ w
Conclusion
Dans ce guide, nous avons brièvement expliqué comment afficher les fichiers journaux standard sur les serveurs Ubuntu. Cette liste n'est pas exhaustive, mais nous espérons qu'elle vous donnera une idée de l'endroit où chercher.