« Bac à sable » : différence entre les versions
m (Ébauche d'une nouvelle page) |
|||
Ligne 1 : | Ligne 1 : | ||
= | = Consulter les logs : quoi, où et comment chercher ? = | ||
Cet article est une ébauche. N'hésitez pas à contribuer ou à en discuter. | |||
Être capable de chercher dans les logs peut se révéler indispensable. | |||
Les journaux log sont stockés dans le répertoire /var/log/ et sont consultables grâce aux commandes tail, grep et zgrep. | |||
'''Pour voir "en direct" des logs (tail -f):''' | |||
# tail -f /var/log/auth.log | |||
'''Avoir les 20 dernières lignes d'un fichier log:''' | |||
# tail -n 20 /var/log/messages | |||
'''Rechercher dans le texte facilement "à la vim" - "/recherche" avec less''' | |||
# tail -n 20 /var/log/messages |less | |||
'''Rechercher un paquet en particulier''' | |||
# grep -R "nom_du_paquet" /var/log/* | |||
'''Y compris dans les logs compressés sous forme de fichiers .gz''' | |||
# zgrep "nom_du-paquet" /var/log/* | |||
'''Il est également possible de "grepper" une commande grep.''' | |||
# grep -r "dpkg" /var/log/* | grep erreur | |||
'''Et avec une commande d'exclusion (grep -v => A l'exclusion de)''' | |||
# grep -r "dpkg" /var/log/* | grep -v ejabberd | |||
'''Trouver dans quels fichiers de logs se trouve la chaine "dpkg" (-r recursive, -i insensible à la "casse", -l n'affiche pas tous les résultats, seulement le nom des fichiers)''' | |||
# grep -r -i -l 'dpkg' /var/log/ | |||
'''Pour conserver le résultat des recherches dans un fichier (/tmp/ma_recherche_dpkg.log)''' | |||
# grep -r -i -l 'dpkg' /var/log/ > /tmp/ma_recherche_dpkg.log | |||
'''Avoir les 20 dernières lignes d'une recherche avec grep:''' | |||
# grep -r "dpkg" /var/log/* | tail -n 20 | |||
==Dans quels logs chercher ?== | |||
Les logs d'update-alternatives. | |||
/var/log/alternatives.log | |||
Les logs du serveur http apache2. | |||
/var/log/apache2/* | |||
Les logs d'apt. Tous les paquets installés avec apt-get install, par exemple. | |||
/var/log/apt/* | |||
* | |||
Les logs d'aptitude. Contient toutes les actions demandées, même les abandonnées. | |||
/var/log/aptitude | |||
Les informations d'autorisation de système. Y sont consignées toutes les connexions (réussies ou pas) et la méthode d'authentification utilisée. | |||
/var/log/auth.log | |||
Les logs du serveur de nom bind9, s'il sont activés. | |||
/var/log/bind.log | |||
Les informations enregistrées lors du démarrage du système. Ce fichier n'est pas activé par défaut. | |||
/var/log/boot.log | |||
Semblable à /var/log/wtmp. Affiche les connexions/déconnexions au système # lastb alors que # last lira le fichier /var/log/wtmp. | |||
/var/log/btmp | |||
Les logs du système d'impression cups. | |||
/var/log/cups/* | |||
Les informations sur les tâches cron. Enregistrement à chaque fois que le démon cron (ou anacron) commence une tâche. | |||
/var/log/cron | |||
Les informations enregistrées par les différents daemons (processus) de fond qui fonctionnent sur le système. | |||
/var/log/daemon.log | |||
Les logs de debugging. | |||
/var/log/debug | |||
Les messages du noyau Linux depuis le démarrage. | |||
/var/log/dmesg | |||
Les informations sur les paquets installés ou retirés en utilisant la commande dpkg. | |||
/var/log/dpkg.log | |||
Les Ban/Unban et infos sur le programme (Error, Info, etc.) si fail2ban est installé. | |||
/var/log/fail2ban.log | |||
Les échecs de connexion. # faillog -u root | |||
/var/log/faillog | |||
Les informations enregistrées par le noyau. Utile pour débogguer un noyau personnalisé, par exemple. | |||
/var/log/kern.log | |||
Les informations de connexion récente de tous les utilisateurs. Ce n'est pas un fichier ascii. Vous devez utiliser la commande lastlog pour afficher le contenu de ce fichier. | |||
/var/log/lastlog | |||
Les informations du serveur de messagerie. Par exemple, sendmail enregistre des informations sur tous les éléments envoyés dans ces fichiers. | |||
/var/log/mail.* | |||
Les messages du système, y compris les messages qui sont enregistrés au démarrage. Beaucoup de choses sont enregistrées dans /var/log/ messages y compris le courrier, cron, daemon, kern, auth, etc. | |||
/var/log/messages | |||
Tous les messages, hormis les connexions des utilisateurs. Plus complet que /var/log/messages. | |||
/var/log/syslog | |||
Les informations sur tous les journaux de niveau utilisateur. | |||
/var/log/user.log | |||
Toutes les connexions et déconnexions: last -f /var/log/wtmp. | |||
/var/log/wtmp | |||
Les messages du serveur X. N'existe pas sur un serveur. | |||
/var/log/Xorg.x.log | |||
===Pour faciliter la lectures de toutes ces pages=== | |||
'''Coloration syntaxique des logs''' | |||
# apt-get install ccze | |||
<u>Utilisation :</u> | |||
# tail -10 /var/log/syslog | ccze -A | |||
Voir la page de ccze : https://wiki.debian-fr.xyz/Ccze_-_Coloration_syntaxique_des_logs | |||
'''Pour afficher en couleur le nom de paquet recherché et aider à la lecture des history.log.''' | |||
grep --color=always "nom_du_paquet" /var/log/apt/history.log | |||
Et un alias : | |||
$ alias grep | |||
alias grep='grep --color=auto' | |||
'''Et pour cumuler le tout : recherche dans les history.log.X.gz avec coloration syntaxique et coloration du nom du paquet.''' | |||
# zgrep --color=always "nom_du_paquet" /var/log/apt/history* | ccze -A | |||
[[Catégorie:Aide]] | [[Catégorie:Aide]] |
Version du 27 mai 2016 à 13:59
Consulter les logs : quoi, où et comment chercher ?
Cet article est une ébauche. N'hésitez pas à contribuer ou à en discuter.
Être capable de chercher dans les logs peut se révéler indispensable. Les journaux log sont stockés dans le répertoire /var/log/ et sont consultables grâce aux commandes tail, grep et zgrep.
Pour voir "en direct" des logs (tail -f):
# tail -f /var/log/auth.log
Avoir les 20 dernières lignes d'un fichier log:
# tail -n 20 /var/log/messages
Rechercher dans le texte facilement "à la vim" - "/recherche" avec less
# tail -n 20 /var/log/messages |less
Rechercher un paquet en particulier
# grep -R "nom_du_paquet" /var/log/*
Y compris dans les logs compressés sous forme de fichiers .gz
# zgrep "nom_du-paquet" /var/log/*
Il est également possible de "grepper" une commande grep.
# grep -r "dpkg" /var/log/* | grep erreur
Et avec une commande d'exclusion (grep -v => A l'exclusion de)
# grep -r "dpkg" /var/log/* | grep -v ejabberd
Trouver dans quels fichiers de logs se trouve la chaine "dpkg" (-r recursive, -i insensible à la "casse", -l n'affiche pas tous les résultats, seulement le nom des fichiers)
# grep -r -i -l 'dpkg' /var/log/
Pour conserver le résultat des recherches dans un fichier (/tmp/ma_recherche_dpkg.log)
# grep -r -i -l 'dpkg' /var/log/ > /tmp/ma_recherche_dpkg.log
Avoir les 20 dernières lignes d'une recherche avec grep:
# grep -r "dpkg" /var/log/* | tail -n 20
Dans quels logs chercher ?
Les logs d'update-alternatives.
/var/log/alternatives.log
Les logs du serveur http apache2.
/var/log/apache2/*
Les logs d'apt. Tous les paquets installés avec apt-get install, par exemple.
/var/log/apt/*
Les logs d'aptitude. Contient toutes les actions demandées, même les abandonnées.
/var/log/aptitude
Les informations d'autorisation de système. Y sont consignées toutes les connexions (réussies ou pas) et la méthode d'authentification utilisée.
/var/log/auth.log
Les logs du serveur de nom bind9, s'il sont activés.
/var/log/bind.log
Les informations enregistrées lors du démarrage du système. Ce fichier n'est pas activé par défaut.
/var/log/boot.log
Semblable à /var/log/wtmp. Affiche les connexions/déconnexions au système # lastb alors que # last lira le fichier /var/log/wtmp.
/var/log/btmp
Les logs du système d'impression cups.
/var/log/cups/*
Les informations sur les tâches cron. Enregistrement à chaque fois que le démon cron (ou anacron) commence une tâche.
/var/log/cron
Les informations enregistrées par les différents daemons (processus) de fond qui fonctionnent sur le système.
/var/log/daemon.log
Les logs de debugging.
/var/log/debug
Les messages du noyau Linux depuis le démarrage.
/var/log/dmesg
Les informations sur les paquets installés ou retirés en utilisant la commande dpkg.
/var/log/dpkg.log
Les Ban/Unban et infos sur le programme (Error, Info, etc.) si fail2ban est installé.
/var/log/fail2ban.log
Les échecs de connexion. # faillog -u root
/var/log/faillog
Les informations enregistrées par le noyau. Utile pour débogguer un noyau personnalisé, par exemple.
/var/log/kern.log
Les informations de connexion récente de tous les utilisateurs. Ce n'est pas un fichier ascii. Vous devez utiliser la commande lastlog pour afficher le contenu de ce fichier.
/var/log/lastlog
Les informations du serveur de messagerie. Par exemple, sendmail enregistre des informations sur tous les éléments envoyés dans ces fichiers.
/var/log/mail.*
Les messages du système, y compris les messages qui sont enregistrés au démarrage. Beaucoup de choses sont enregistrées dans /var/log/ messages y compris le courrier, cron, daemon, kern, auth, etc.
/var/log/messages
Tous les messages, hormis les connexions des utilisateurs. Plus complet que /var/log/messages.
/var/log/syslog
Les informations sur tous les journaux de niveau utilisateur.
/var/log/user.log
Toutes les connexions et déconnexions: last -f /var/log/wtmp.
/var/log/wtmp
Les messages du serveur X. N'existe pas sur un serveur.
/var/log/Xorg.x.log
Pour faciliter la lectures de toutes ces pages
Coloration syntaxique des logs
# apt-get install ccze
Utilisation :
# tail -10 /var/log/syslog | ccze -A
Voir la page de ccze : https://wiki.debian-fr.xyz/Ccze_-_Coloration_syntaxique_des_logs
Pour afficher en couleur le nom de paquet recherché et aider à la lecture des history.log.
grep --color=always "nom_du_paquet" /var/log/apt/history.log
Et un alias :
$ alias grep alias grep='grep --color=auto'
Et pour cumuler le tout : recherche dans les history.log.X.gz avec coloration syntaxique et coloration du nom du paquet.
# zgrep --color=always "nom_du_paquet" /var/log/apt/history* | ccze -A