269 lines
7.8 KiB
Groff
269 lines
7.8 KiB
Groff
.\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu)
|
|
.\" May be distributed under the GNU General Public License
|
|
.TH DMESG "1" "July 2012" "util-linux" "User Commands"
|
|
.SH NAME
|
|
dmesg \- print or control the kernel ring buffer
|
|
.SH SYNOPSIS
|
|
.B dmesg
|
|
[options]
|
|
.sp
|
|
.B dmesg \-\-clear
|
|
.br
|
|
.BR "dmesg \-\-read\-clear " [options]
|
|
.br
|
|
.BI "dmesg \-\-console\-level " level
|
|
.br
|
|
.B dmesg \-\-console\-on
|
|
.br
|
|
.B dmesg \-\-console\-off
|
|
.SH DESCRIPTION
|
|
.B dmesg
|
|
is used to examine or control the kernel ring buffer.
|
|
.PP
|
|
The default action is to display all messages from the kernel ring buffer.
|
|
.SH OPTIONS
|
|
The
|
|
.BR \-\-clear ,
|
|
.BR \-\-read\-clear ,
|
|
.BR \-\-console\-on ,
|
|
.BR \-\-console\-off ,
|
|
and
|
|
.B \-\-console\-level
|
|
options are mutually exclusive.
|
|
.PP
|
|
.IP "\fB\-C\fR, \fB\-\-clear\fR"
|
|
Clear the ring buffer.
|
|
.IP "\fB\-c\fR, \fB\-\-read\-clear\fR"
|
|
Clear the ring buffer after first printing its contents.
|
|
.IP "\fB\-D\fR, \fB\-\-console\-off\fR"
|
|
Disable the printing of messages to the console.
|
|
.IP "\fB\-d\fR, \fB\-\-show\-delta\fR"
|
|
Display the timestamp and the time delta spent between messages. If used
|
|
together with
|
|
.B \-\-notime
|
|
then only the time delta without the timestamp is printed.
|
|
.IP "\fB\-E\fR, \fB\-\-console\-on\fR"
|
|
Enable printing messages to the console.
|
|
.IP "\fB\-e\fR, \fB\-\-reltime\fR"
|
|
Display the local time and the delta in human-readable format. Be aware that
|
|
conversion to the local time could be inaccurate (see \fB\-T\fR for more
|
|
details).
|
|
.IP "\fB\-F\fR, \fB\-\-file \fIfile\fR"
|
|
Read the syslog messages from the given
|
|
.IR file .
|
|
Note that \fB\-F\fR does not support messages in kmsg format. The old syslog format is supported only.
|
|
.IP "\fB\-f\fR, \fB\-\-facility \fIlist\fR"
|
|
Restrict output to the given (comma-separated)
|
|
.I list
|
|
of facilities. For example:
|
|
.PP
|
|
.RS 14
|
|
.B dmesg \-\-facility=daemon
|
|
.RE
|
|
.IP
|
|
will print messages from system daemons only. For all supported facilities
|
|
see the
|
|
.B \-\-help
|
|
output.
|
|
.IP "\fB\-H\fR, \fB\-\-human\fR"
|
|
Enable human-readable output. See also \fB\-\-color\fR, \fB\-\-reltime\fR
|
|
and \fB\-\-nopager\fR.
|
|
.IP "\fB\-k\fR, \fB\-\-kernel\fR"
|
|
Print kernel messages.
|
|
.IP "\fB\-L\fR, \fB\-\-color\fR[=\fIwhen\fR]"
|
|
Colorize the output. The optional argument \fIwhen\fP
|
|
can be \fBauto\fR, \fBnever\fR or \fBalways\fR. If the \fIwhen\fR argument is omitted,
|
|
it defaults to \fBauto\fR. The colors can be disabled; for the current built-in default
|
|
see the \fB\-\-help\fR output. See also the \fBCOLORS\fR section below.
|
|
.IP "\fB\-l\fR, \fB\-\-level \fIlist\fR"
|
|
Restrict output to the given (comma-separated)
|
|
.I list
|
|
of levels. For example:
|
|
.PP
|
|
.RS 14
|
|
.B dmesg \-\-level=err,warn
|
|
.RE
|
|
.IP
|
|
will print error and warning messages only. For all supported levels see the
|
|
.B \-\-help
|
|
output.
|
|
.IP "\fB\-n\fR, \fB\-\-console\-level \fIlevel\fR
|
|
Set the
|
|
.I level
|
|
at which printing of messages is done to the console. The
|
|
.I level
|
|
is a level number or abbreviation of the level name. For all supported
|
|
levels see the
|
|
.B \-\-help
|
|
output.
|
|
.sp
|
|
For example,
|
|
.B \-n 1
|
|
or
|
|
.B \-n emerg
|
|
prevents all messages, except emergency (panic) messages, from appearing on
|
|
the console. All levels of messages are still written to
|
|
.IR /proc/kmsg ,
|
|
so
|
|
.BR syslogd (8)
|
|
can still be used to control exactly where kernel messages appear. When the
|
|
.B \-n
|
|
option is used,
|
|
.B dmesg
|
|
will
|
|
.I not
|
|
print or clear the kernel ring buffer.
|
|
.IP "\fB\-\-noescape\fR"
|
|
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 \fB\-\-raw\fR. Be
|
|
careful and don't use it by default.
|
|
.IP "\fB\-P\fR, \fB\-\-nopager\fR"
|
|
Do not pipe output into a pager. A pager is enabled by default for \fB\-\-human\fR output.
|
|
.IP "\fB\-p\fR, \fB\-\-force\-prefix\fR"
|
|
Add facility, level or timestamp information to each line of a multi-line message.
|
|
.IP "\fB\-r\fR, \fB\-\-raw\fR"
|
|
Print the raw message buffer, i.e., do not strip the log-level prefixes, but
|
|
all unprintable characters are still escaped (see also \fB\-\-noescape\fR).
|
|
|
|
Note that the real raw format depends on the method how
|
|
.BR dmesg (1)
|
|
reads kernel messages. The /dev/kmsg device uses a different format than
|
|
.BR syslog (2).
|
|
For backward compatibility,
|
|
.BR dmesg (1)
|
|
returns data always in the
|
|
.BR 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'.
|
|
.IP "\fB\-S\fR, \fB\-\-syslog\fR"
|
|
Force \fBdmesg\fR to use the
|
|
.BR syslog (2)
|
|
kernel interface to read kernel messages. The default is to use /dev/kmsg rather
|
|
than
|
|
.BR syslog (2)
|
|
since kernel 3.5.0.
|
|
.IP "\fB\-s\fR, \fB\-\-buffer\-size \fIsize\fR
|
|
Use a buffer of
|
|
.I 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.
|
|
.IP "\fB\-T\fR, \fB\-\-ctime\fR"
|
|
Print human-readable timestamps.
|
|
.IP
|
|
.B Be aware that the timestamp could be inaccurate!
|
|
The
|
|
.B time
|
|
source used for the logs is
|
|
.B not updated after
|
|
system
|
|
.BR SUSPEND / RESUME .
|
|
Timestamps are adjusted according to current delta between boottime and monotonic
|
|
clocks, this works only for messages printed after last resume.
|
|
.IP "\fB\-t\fR, \fB\-\-notime\fR"
|
|
Do not print kernel's timestamps.
|
|
.IP "\fB\-\-time\-format\fR \fIformat\fR"
|
|
Print timestamps using the given \fIformat\fR, which can be
|
|
.BR ctime ,
|
|
.BR reltime ,
|
|
.B delta
|
|
or
|
|
.BR iso .
|
|
The first three formats are aliases of the time-format-specific options.
|
|
The
|
|
.B iso
|
|
format is a
|
|
.B 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 \fBiso\fR timestamp is:
|
|
YYYY-MM-DD<T>HH:MM:SS,<microseconds><-+><timezone offset from UTC>.
|
|
.IP
|
|
The
|
|
.B iso
|
|
format has the same issue as
|
|
.BR ctime :
|
|
the time may be inaccurate when a system is suspended and resumed.
|
|
.TP
|
|
.BR \-u , " \-\-userspace"
|
|
Print userspace messages.
|
|
.TP
|
|
.BR \-w , " \-\-follow"
|
|
Wait for new messages. This feature is supported only on systems with
|
|
a readable /dev/kmsg (since kernel 3.5.0).
|
|
.TP
|
|
.BR \-W , " \-\-follow-new"
|
|
Wait and print only new messages.
|
|
.TP
|
|
.BR \-x , " \-\-decode"
|
|
Decode facility and level (priority) numbers to human-readable prefixes.
|
|
.TP
|
|
.BR \-V , " \-\-version"
|
|
Display version information and exit.
|
|
.TP
|
|
.BR \-h , " \-\-help"
|
|
Display help text and exit.
|
|
.SH COLORS
|
|
Implicit coloring can be disabled by an empty file \fI/etc/terminal-colors.d/dmesg.disable\fR.
|
|
See
|
|
.BR terminal-colors.d (5)
|
|
for more details about colorization configuration.
|
|
.PP
|
|
The logical color names supported by
|
|
.B dmesg
|
|
are:
|
|
.TP
|
|
.B subsys
|
|
The message sub-system prefix (e.g., "ACPI:").
|
|
.TP
|
|
.B time
|
|
The message timestamp.
|
|
.TP
|
|
.B timebreak
|
|
The message timestamp in short ctime format in \fB\-\-reltime\fR
|
|
or \fB\-\-human\fR output.
|
|
.TP
|
|
.B alert
|
|
The text of the message with the alert log priority.
|
|
.TP
|
|
.B crit
|
|
The text of the message with the critical log priority.
|
|
.TP
|
|
.B err
|
|
The text of the message with the error log priority.
|
|
.TP
|
|
.B warn
|
|
The text of the message with the warning log priority.
|
|
.TP
|
|
.B segfault
|
|
The text of the message that inform about segmentation fault.
|
|
.SH EXIT STATUS
|
|
.B dmesg
|
|
can fail reporting permission denied error. This is usually caused by
|
|
.B dmesg_restrict
|
|
kernel setting, please see
|
|
.BR syslog (2)
|
|
for more details.
|
|
.SH AUTHORS
|
|
.MT kzak@redhat.com
|
|
Karel Zak
|
|
.ME
|
|
|
|
.br
|
|
.B dmesg
|
|
was originally written by
|
|
.MT tytso@athena.mit.edu
|
|
Theodore Ts'o
|
|
.ME
|
|
.SH SEE ALSO
|
|
.BR terminal-colors.d (5),
|
|
.BR syslogd (8)
|
|
.SH AVAILABILITY
|
|
The dmesg command is part of the util-linux package and is available from
|
|
.UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
|
|
Linux Kernel Archive
|
|
.UE .
|