NAME
dmesg - print or control the kernel ring bufferSYNOPSIS
dmesg [options]DESCRIPTION
dmesg is used to examine or control the kernel ring buffer.OPTIONS
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. Be aware that conversion to the local time could be
inaccurate (see -T for more details).
Read the syslog messages from the given
file. Note that -F does not support messages in kmsg format. The
old syslog format is supported only.
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.
Use JSON output format. The time output format
is in "sec.usec" format only, log priority level is not decoded by
default (use --decode to split into facility and priority), the other
options to control the output format or time format are silently
ignored.
Print kernel messages.
Colorize the output. The optional argument
when can be auto, never or always. If the
when argument is omitted, it defaults to auto. The colors can be
disabled; for the current built-in default see the --help output. See
also the COLORS section below.
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 emerg 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.
The unprintable and potentially unsafe
characters (e.g., broken multi-byte sequences, terminal controlling chars,
etc.) are escaped in format \x<hex> for security reason by default. This
option disables this feature at all. It’s usable for example for
debugging purpose together with --raw. Be careful and don’t use
it by default.
Do not pipe output into a pager. A pager is
enabled by default for --human output.
Add facility, level or timestamp information
to each line of a multi-line message.
Print the raw message buffer, i.e., do not
strip the log-level prefixes, but all unprintable characters are still escaped
(see also --noescape).
Note that the real raw format depends on the method how dmesg reads
kernel messages. The /dev/kmsg device uses a different format than
syslog(2). For backward compatibility, dmesg 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. Timestamps are adjusted according to current
delta between boottime and monotonic clocks, this works only for messages
printed after last resume.
Display record since the specified time. The
time is possible to specify in absolute way as well as by relative notation
(e.g. '1 hour ago'). Be aware that the timestamp could be inaccurate and see
--ctime for more details.
Display record until the specified time. The
time is possible to specify in absolute way as well as by relative notation
(e.g. '1 hour ago'). Be aware that the timestamp could be inaccurate and see
--ctime for more details.
Do not print kernel’s timestamps.
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.
Print userspace messages.
Wait for new messages. This feature is
supported only on systems with a readable /dev/kmsg (since kernel
3.5.0).
Wait and print only new messages.
Decode facility and level (priority) numbers
to human-readable prefixes.
Display help text and exit.
Print version and exit.
COLORS
The output colorization is implemented by terminal-colors.d(5) functionality. Implicit coloring can be disabled by an empty fileThe message sub-system prefix (e.g.,
"ACPI:").
The message timestamp.
The message timestamp in short ctime format in
--reltime or --human output.
The text of the message with the alert log
priority.
The text of the message with the critical log
priority.
The text of the message with the error log
priority.
The text of the message with the warning log
priority.
The text of the message that inform about
segmentation fault.
EXIT STATUS
dmesg can fail reporting permission denied error. This is usually caused by dmesg_restrict kernel setting, please see syslog(2) for more details.AUTHORS
Karel <[email protected]>ZakSEE ALSO
terminal-colors.d(5), syslogd(8)REPORTING BUGS
For bug reports, use the issue tracker at <https://github.com/util-linux/util-linux/issues>.AVAILABILITY
The dmesg command is part of the util-linux package which can be downloaded from Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.2022-05-11 | util-linux 2.38.1 |