dmesg - afficher ou contrôler le tampon circulaire du noyau
SYNTAXE
dmesg [options]
dmesg --clear
dmesg --read-clear [options]
dmesg --console-level level
dmesg --console-on
dmesg --console-off
DESCRIPTION
dmesg est utilisé pour examiner ou contrôler le tampon circulaire du noyau.
L'action par défaut est d'afficher tous les messages du tampon circulaire du noyau.
OPTIONS
Les options --clear, --read-clear, --console-on, --console-off et --console-level sont mutuellement exclusives.
-C, --clear
Efface le tampon circulaire.
-c, --read-clear
Efface le tampon circulaire après avoir d'abord affiché son contenu.
-D, --console-off
Désactive l'affichage des messages sur la console.
-d, --show-delta
Affiche l'horodatage et le temps écoulé entre les messages. Si utilisé conjointement avec --notime, seul le temps écoulé, sans l'horodatage, est affiché.
-E, --console-on
Active l'affichage des messages sur la console.
-e, --reltime
Affiche l'heure locale et le temps écoulé dans un format lisible. Sachez que la conversion en heure locale peut être imprécise (voir -T pour plus de détails).
-F, --file file
Lit les messages syslog à partir du fichier spécifié. Notez que -F ne prend pas en charge les messages au format kmsg. Voir -K à la place.
-f, --facility list
Limite la sortie à la liste (séparée par des virgules) des installations spécifiées. Par exemple :
dmesg --facility=daemon
affichera uniquement les messages provenant des démons du système. Pour toutes les installations prises en charge, voir la sortie de --help.
-H, --human
Active la sortie lisible. Voir aussi --color, --reltime et --nopager.
-J, --json
Utilise le format de sortie JSON. Le format de sortie de l'heure est uniquement au format "sec.usec", le niveau de priorité du journal n'est pas décodé par défaut (utilisez --decode pour le diviser en installation et priorité), les autres options pour contrôler le format de sortie ou le format de l'heure sont ignorées en silence.
-K, --kmsg-file file
Lit les messages /dev/kmsg à partir du fichier spécifié. Différents enregistrements sont séparés par un octet NULL, comme prévu.
-k, --kernel
Affiche les messages du noyau.
-L, --color[=when]
Colorise la sortie. L'argument optionnel when peut être auto, never ou always. Si l'argument when est omis, il prend par défaut la valeur auto. Les couleurs peuvent être désactivées ; pour la valeur par défaut intégrée actuelle, voir la sortie de --help. Voir aussi la section COULEURS ci-dessous.
-l, --level list
Limite la sortie à la liste (séparée par des virgules) des niveaux spécifiés. Par exemple :
dmesg --level=err,warn
affichera uniquement les messages d'erreur et d'avertissement. Pour tous les niveaux pris en charge, voir la sortie de --help.
L'ajout d'un plus + au nom d'un niveau inclut également tous les niveaux supérieurs. Par exemple :
dmesg --level=err+
affichera les niveaux d’erreur, critique, alerte et urgence.
L’ajouter en préfixe inclura tous les niveaux inférieurs.
-n, --console-level level
Définit le niveau auquel les messages sont affichés sur la console. Le niveau est un numéro de niveau ou une abréviation du nom du niveau. Pour tous les niveaux pris en charge, consultez la sortie de --help.
Par exemple, -n 1 ou -n emerg empêche tous les messages, à l’exception des messages d’urgence, d’apparaître sur la console. Tous les niveaux de messages sont toujours écrits dans /proc/kmsg, de sorte que syslogd(8) peut toujours être utilisé pour contrôler précisément l’endroit où les messages du noyau apparaissent. Lorsque l’option -n est utilisée, dmesg n’affichera ni ne videra le tampon de journal du noyau.
--noescape
Par défaut, les caractères non imprimables et potentiellement dangereux (par exemple, les séquences multi-octets incorrectes, les caractères de contrôle du terminal, etc.) sont échappés au format \x<hex> pour des raisons de sécurité. Cette option désactive cette fonctionnalité. Elle peut être utilisée, par exemple, à des fins de débogage en conjonction avec --raw. Soyez prudent et n’utilisez pas cette option par défaut.
-P, --nopager
N’envoie pas la sortie à un paginateur. Un paginateur est activé par défaut pour la sortie --human.
-p, --force-prefix
Ajoute des informations sur la facilité, le niveau ou l’horodatage à chaque ligne d’un message multiligne.
-r, --raw
Affiche le tampon de message brut, c’est-à-dire qu’il ne supprime pas les préfixes de niveau de journal, mais tous les caractères non imprimables sont toujours échappés (voir également --noescape).
Notez que le format brut réel dépend de la méthode utilisée par dmesg pour lire les messages du noyau. Le périphérique /dev/kmsg utilise un format différent de syslog(2). Pour assurer la compatibilité avec les versions antérieures, dmesg renvoie toujours des données au format syslog(2). Il est possible de lire les données brutes réelles à partir de /dev/kmsg en utilisant, par exemple, la commande « dd if=/dev/kmsg iflag=nonblock ».
-S, --syslog
Force dmesg à utiliser l’interface noyau syslog(2) pour lire les messages du noyau. Par défaut, depuis la version 3.5.0 du noyau, il utilise plutôt /dev/kmsg.
-s, --buffer-size size
Utilise un tampon de la taille spécifiée pour interroger le tampon de journal du noyau. La valeur par défaut est 16392. (La taille par défaut du tampon syslog du noyau était de 4096 au début, puis de 8192 depuis la version 1.3.54 et de 16384 depuis la version 2.1.113.) Si vous avez défini la taille du tampon du noyau pour qu’elle soit supérieure à la valeur par défaut, vous pouvez utiliser cette option pour afficher l’intégralité du tampon.
-T, --ctime
Affiche des horodatages lisibles par l’homme.
Soyez conscient que l’horodatage peut être inexact ! La source de temps utilisée pour les journaux n’est pas mise à jour après la suspension/reprise du système. Les horodatages sont ajustés en fonction du delta actuel entre l’heure de démarrage et les horloges monotones. Cela ne fonctionne que pour les messages affichés après la dernière reprise.
--since time
Affiche les enregistrements à partir de l’heure spécifiée. La granularité de la fraction de seconde est prise en charge. L’heure peut être spécifiée de manière absolue ou relative (par exemple, « il y a 1 heure »). Soyez conscient que l’horodatage peut être inexact et consultez --ctime pour plus de détails.
--until time
Affiche les enregistrements jusqu’à l’heure spécifiée. La granularité de la fraction de seconde est prise en charge. L’heure peut être spécifiée de manière absolue ou relative (par exemple, « il y a 1 heure »). Soyez conscient que l’horodatage peut être inexact et consultez --ctime pour plus de détails.
-t, --notime
N’affiche pas les horodatages du noyau.
--time-format format
Affiche les horodatages en utilisant le format donné, qui peut être ctime, reltime, delta, iso ou raw. Les trois premiers formats sont des alias des options spécifiques au format horaire. Le format raw utilise le format d’horodatage par défaut qui affiche les secondes depuis le démarrage. Le format iso est une implémentation d’dmesg du format d’horodatage ISO-8601. L’objectif de ce format est de faciliter la comparaison des horodatages entre deux systèmes et toute autre analyse. La définition de l’horodatage iso est : AAAA-MM-JJ
Le format iso présente le même problème que ctime : l’heure peut être inexacte lorsqu’un système est suspendu puis réactivé.
--time-format peut être utilisé plusieurs fois avec des valeurs différentes pour format afin d’afficher chaque format spécifié.
Le format delta est toujours suivi de ctime ou raw s’ils sont spécifiés ensemble.
-u, --userspace
Affiche les messages de l’espace utilisateur.
-w, --follow
Attend de nouveaux messages. Cette fonctionnalité est prise en charge uniquement sur les systèmes dotés d’un fichier /dev/kmsg accessible en lecture (depuis la version 3.5.0 du noyau).
-W, --follow-new
Attend et affiche uniquement les nouveaux messages.
-x, --decode
Décode les numéros de facilité et de niveau (priorité) en préfixes lisibles par l’homme.
-h, --help
Affiche le texte d’aide et quitte.
-V, --version
Affiche la version et quitte.
COULEURS
La colorisation de la sortie est implémentée par la fonctionnalité terminal-colors.d(5). La colorisation implicite peut être désactivée par un fichier vide
/etc/terminal-colors.d/dmesg.disable
pour la commande dmesg ou pour tous les outils en utilisant
/etc/terminal-colors.d/disable
Depuis la version 2.41, la variable d’environnement $NO_COLOR est également prise en charge pour désactiver la colorisation de la sortie, à moins qu’elle ne soit explicitement activée par une option de ligne de commande.
Le répertoire spécifique à l’utilisateur $XDG_CONFIG_HOME/terminal-colors.d ou $HOME/.config/terminal-colors.d remplace le paramètre global.
Notez que la colorisation de la sortie peut être activée par défaut, et dans ce cas, les répertoires terminal-colors.d n’ont pas besoin d’exister.
Les noms de couleurs logiques pris en charge par dmesg sont les suivants :
subsys
Le préfixe du sous-système du message (par exemple, « ACPI : »).
time
L’horodatage du message.
timebreak
L’horodatage du message dans un format ctime court dans la sortie --reltime ou --human.
alert
Le texte du message avec la priorité de journal d’alerte.
crit
Le texte du message avec la priorité de journal critique.
err
Le texte du message avec la priorité de journal d’erreur.
warn
Le texte du message avec la priorité de journal d’avertissement.
segfault
Le texte du message qui informe d’un défaut de segmentation.
CODE DE RETOUR
dmesg peut échouer en signalant une erreur d’autorisation refusée. Ceci est généralement dû au paramètre dmesg_restrict du noyau, veuillez consulter syslog(2) pour plus de détails.
AUTEURS
Karel Zak <_>
dmesg a été écrit à l’origine par Theodore Ts’o <_>.
CONSULTER AUSSI
terminal-colors.d(5), syslogd(8)
SIGNALER LES BUGS
Pour les signalements de bugs, utilisez le système de suivi des problèmes [https://github.com/util-linux/util-linux/issues].
DISPONIBILITÉ
La commande dmesg fait partie du paquet util-linux, que l’on peut télécharger depuis l’archive Linux Kernel [https://www.kernel.org/pub/linux/utils/util-linux/].