Skip to main content

dmesg Timestamp in lesbare Form umwandeln

Mit dem Kommando dmesg kann man sich den Kernel Ringbuffer anzeigen lassen, also alle Kernel-Meldungen seit Systemstart. Die Zeit wird dabei als Sekunden seit dem Systemstart ausgegeben.

Ab Debian Wheezy kann man einfach über 'dmesg -T' eine lesbare Zeit ausgeben lassen.

Braucht man die genaue Zeit, kann man die Meldungen mit lesbarer Zeit entweder in /var/log/kern.log finden oder sich die Zeit über einen kleinen Umweg konvertieren lassen (in diesem Fall einfach über einen alias Befehl):

alias kmsg='dmesg | perl -ne "BEGIN{\$a= time()- qx!cat /proc/uptime!}; s/\[\s*(\d+)\.\d+\]/localtime(\$1 + \$a)/e; print \$_;"'

Der Output sieht dann so aus:

Fri Apr  5 11:06:50 2013 ip_tables: (C) 2000-2006 Netfilter Core Team
Fri Apr  5 11:06:50 2013 init: plymouth-stop pre-start process (2024) terminated with status 1
Fri Apr  5 11:06:51 2013 eth0: no IPv6 routers present