Print or control the kernel ring buffer
dmesg [options]
dmesg --clear
dmesg --read-clear [options]
dmesg --console-level level
dmesg --console-on
dmesg --console-off
dmesg is used to examine or control the kernel ring buffer.
The default action is to read all messages from the kernel ring buffer.
The --clear, --read-clear, --console-on, --console-off, and --console-level options are mutually exclusive.
Clear the ring buffer.
Clear the ring buffer after first printing its contents.
Disable the printing of messages to the console.
Display the timestamp and the time delta spent between messages. If used together with --notime then only the time delta without the timestamp is printed.
Enable printing messages to the console.
Display the local time and the delta in human-readable format.
Read the messages from the given file.
Restrict output to the given (comma-separated) list of facilities. For example:
dmesg --facility=daemon
will print messages from system daemons only. For all supported facilities see the --help output.
Enable human-readable output. See also --color, --reltime and --nopager.
Display help text and exit.
Print kernel messages.
Colorize important messages (enabled by default). The optional argument when can be auto, never or always. If the when argument is omitted, it defaults to auto.
Restrict output to the given (comma-separated) list of levels. For example:
dmesg --level=err,warn
will print error and warning messages only. For all supported levels see the --help output.
Set the level at which printing of messages is done to the console. The level is a level number or abbreviation of the level name. For all supported levels see the --help output.
For example, -n 1 or -n alert prevents all messages, except emergency (panic) messages, from appearing on the console. All levels of messages are still written to /proc/kmsg, so syslogd(8) can still be used to control exactly where kernel messages appear. When the -n option is used, dmesg will not print or clear the kernel ring buffer.
Do not pipe output into a pager. A pager is enabled by default for --human output.
Print the raw message buffer, i.e. do not strip the log-level prefixes.
Note that the real raw format depends on the method how dmesg(1) reads kernel messages. The /dev/kmsg device uses a different format than syslog(2). For backward compatibility, dmesg(1) returns data always in the syslog(2) format. It is possible to read the real raw data from /dev/kmsg by, for example, the command 'dd if=/dev/kmsg iflag=nonblock'.
Force dmesg to use the syslog(2) kernel interface to read kernel messages. The default is to use /dev/kmsg rather than syslog(2) since kernel 3.5.0.
Use a buffer of size to query the kernel ring buffer. This is 16392 by default. (The default kernel syslog buffer size was 4096 at first, 8192 since 1.3.54, 16384 since 2.1.113.) If you have set the kernel buffer to be larger than the default, then this option can be used to view the entire buffer.
Print human-readable timestamps.
Be aware that the timestamp could be inaccurate! The time source used for the logs is not updated after system SUSPEND/RESUME.
Do not print kernel's timestamps.
Print userspace messages.
Display version information and exit.
Wait for new messages. This feature is supported only on systems with a readable /dev/kmsg (since kernel 3.5.0).
Decode facility and level (priority) numbers to human-readable prefixes.
Print timestamps using the given format, which can be ctime, reltime, delta or iso. The first three formats are aliases of the time-format-specific options. The iso format is a dmesg implementation of the ISO-8601 timestamp format. The purpose of this format is to make the comparing of timestamps between two systems, and any other parsing, easy. The definition of the iso timestamp is: YYYY-MM-DD<T>HH:MM:SS,<microseconds><-+><timezone offset from UTC>.
The iso format has the same issue as ctime: the time may be inaccurate when a system is suspended and resumed.
Implicit coloring can be disabled by an empty file /etc/terminal-colors.d/dmesg.disable. See terminal-colors.d(5) for more details about colorization configuration.
The logical color names supported by dmesg are:
subsys
The message sub-system prefix (e.g. "ACPI:").
time
The message timestamp.
alert
The text of the message with the alert log priority.
crit
The text of the message with the critical log priority.
err
The text of the message with the error log priority.
warn
The text of the message with the warning log priority.
segfault
The text of the message that inform about segmentation fault.
syslogd(8) terminal-colors.d(5)
Karel Zak
dmesg was originally written by
Theodore Ts'o
The dmesg command is part of the util-linux package and is available from
Linux Kernel Archive