dmesg un peu plus lisible quelque soit son âge

closeCet article a été publié il y a 7 ans 3 mois 5 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

La sortie de la commande dmesg regorge d’informations envoyées par le noyau depuis son démarrage. Sa lecture peut certes paraître compliquée, mais pire, les messages sont datés de manière encore plus bizarre. Voyons donc les solutions, en particulier les vieilles distributions/versions de la commande.

Y’a quoi déjà dans cette sortie ?

On y voit tout ce que le noyau fait au démarrage, à savoir détecter le matériel, jusqu’à parfois les modules qui interviennent dessus. Par la suite, problème réseau, disque, segfault, out of memory, tout ce que le noyau trouve à vous dire se retrouve ici. Vous pouvez par exemple vérifier si vos cartes réseau sont bien prises en charge :

Comme je l’ai dit, on a un problème avec les dates des messages de dmesg. Elles sont en secondes depuis le démarrage (dans la plus pure tradition des timestamps, mais salement décalés). Et là, autant dire que la conversion est compliquée, du moins sans outils adaptés.

Pourquoi les vieilles distributions ?

dmesg est une commande qui fait partie du paquet util-linux. Sur les versions récentes (2.25.2 sur Jessie), le switch -T permet de faire la conversion automatique des dates, et ajoute même parfois de la couleur. C’est le cas notamment sur CENTOS 7 et debian 8. Mais pas sur centos 6 et debian 7, sur ce dernier en version 2.20.1.

Un script en Perl à la rescousse

J’ai beau ne pas beaucoup aimer Perl (je trouve le langage étrangement peu lisible), je suis reconnaissant que certains arrivent à en faire quelque chose. Et en l’occurrence, pouvoir faire la conversion des dates pour la sortie de dmesg. On récupère ce script à l’adresse suivante. Il existe sur cette même page l’équivalent écrit en Python, pour l’usage ponctuel qui en sera fait je ne vois pas de problème à utiliser celui que vous préférez.

Je met tout de même la source ici en attendant mieux :

Ça sera plus facile pour debugger des problèmes des applications récalcitrantes sur des plateformes avec un peu de bouteille.

Teaser : Bientôt dans le futur dépot misc-scripts de Seboss666 😛