Visualizzare data e orario del comando dmesg in formato human readable

dmesg – print or control the kernel ring buffer

Spesso capita di dover analizzare l’output del dmesg e magari confrontare gli orari con altri log file. Il problema e’ che dmesg visualizza data e ora in formato timestamp . Come fare a far visualizzare a dmesg un orario “umano” ?

Fortunatamente non serve “lottare” con variabili d’ambiente o fare calcoli matematici, basta usare:

# dmesg -T

Sfortunatamente questo funziona solo sulle nuove versioni di dmesg presenti su Ububtu dalla 12.10 in poi e su Fedora 19 : niente da fare su Red Hat 6 purtroppo..

Fedora 19, che installa il pacchetto util-linux 2.23.2, permette di fare ancora meglio abilitando i colori e paginando l’output semplicemente digitando:

# dmesg -H

Se la vostra versione di dmesg non dovesse supportare le opzioni -T o -H, non vi rimane che usare il seguente script:

# dmesg | awk -F ] '{"cat /proc/uptime | cut -d \" \" -f 1" | getline st;a=substr( $1,2, length($1) - 1);print strftime("%F %H:%M:%S %Z",systime()-st+a)" -> "$0}' | more

Comandi linux in pillole

Una delle principali ragioni che mi ha spinto a creare un blog e’ la possibilita’ di scrivere dei post pratici sull’utilizzo dei comandi Linux.

L’obiettivo e’ condividere queste informazioni, discuterle e ricevere consigli in modo da ampliare le mie conoscenze (oltre ad avere un mezzo pratico e veloce per il copia e incolla 🙂

Cosa troverete :

  • spiegazioni brevi e schematiche dei principali utilizzi dei comandi
  • semplici script per facilitare il lavoro del sistemista

Cosa NON troverete :

  • un corso su Linux
  • informazioni complete e lista delle opzioni dei comandi (esistono le manpages per quello)
  • spiegazioni dettagliate dei comandi

Come al solito: commenti e discussioni sull’argomento sono ben accetti.

Elenco dei post disponibili:

dmesg using human readable output format