summaryrefslogtreecommitdiffstats
path: root/sys-utils/dmesg.1
blob: 4bec7892bb90e4500c9f05fd4a4206962a8aeb5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
.\" 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.
.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

.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 .