phpman > man > DMESG(1)

Markdown | JSON | MCP    

TLDR: DMESG (tldr-pages)

Write the kernel messages to `stdout`.

  • Show kernel messages
    sudo dmesg
  • Show kernel error messages
    sudo dmesg {{-l|--level}} err
  • Show kernel messages and keep waiting for new ones, similar to `tail --follow` (available in kernels 3.5.0 and newer)
    sudo dmesg {{-w|--follow}}
  • Show how much physical memory is available on this system
    sudo dmesg | grep {{-i|--ignore-case}} memory
  • Show kernel messages 1 page at a time
    sudo dmesg | less
  • Show kernel messages with a timestamp (available in kernels 3.5.0 and newer)
    sudo dmesg {{-T|--ctime}}
  • Show kernel messages in human-readable form (available in kernels 3.5.0 and newer)
    sudo dmesg {{-H|--human}}
  • Colorize output (available in kernels 3.5.0 and newer)
    sudo dmesg {{-L|--color}}
DMESG(1)                                    User Commands                                   DMESG(1)



NAME
       dmesg - print or control the kernel ring buffer

SYNOPSIS
       dmesg [options]

       dmesg --clear

       dmesg --read-clear [options]

       dmesg --console-level level

       dmesg --console-on

       dmesg --console-off

DESCRIPTION
       dmesg is used to examine or control the kernel ring buffer.

       The default action is to display all messages from the kernel ring buffer.

OPTIONS
       The --clear, --read-clear, --console-on, --console-off, and --console-level options are
       mutually exclusive.

       -C, --clear
           Clear the ring buffer.

       -c, --read-clear
           Clear the ring buffer after first printing its contents.

       -D, --console-off
           Disable the printing of messages to the console.

       -d, --show-delta
           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.

       -E, --console-on
           Enable printing messages to the console.

       -e, --reltime
           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).

       -F, --file file
           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.

       -f, --facility list
           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.

       -H, --human
           Enable human-readable output. See also --color, --reltime and --nopager.

       -k, --kernel
           Print kernel messages.

       -L, --color[=when]
           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.

       -l, --level list
           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.

       -n, --console-level level
           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.

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

       -P, --nopager
           Do not pipe output into a pager. A pager is enabled by default for --human output.

       -p, --force-prefix
           Add facility, level or timestamp information to each line of a multi-line message.

       -r, --raw
           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'.

       -S, --syslog
           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.

       -s, --buffer-size size
           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.

       -T, --ctime
           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.

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

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

       -t, --notime
           Do not print kernel’s timestamps.

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

       -u, --userspace
           Print userspace messages.

       -w, --follow
           Wait for new messages. This feature is supported only on systems with a readable
           /dev/kmsg (since kernel 3.5.0).

       -W, --follow-new
           Wait and print only new messages.

       -x, --decode
           Decode facility and level (priority) numbers to human-readable prefixes.

       -V, --version
           Display version information and exit.

       -h, --help
           Display help text and exit.

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

       timebreak
           The message timestamp in short ctime format in --reltime or --human output.

       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.

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 Zak <kzak AT redhat.com>

       dmesg was originally written by Theodore Ts’o <tytso AT athena.edu>.

SEE ALSO
       terminal-colors.d(5), syslogd(8)

REPORTING BUGS
       For bug reports, use the issue tracker at https://github.com/karelzak/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/>.



util-linux 2.37.2                            2021-07-20                                     DMESG(1)
DMESG(1)
NAME SYNOPSIS
dmesg --clear dmesg --console-on dmesg --console-off
DESCRIPTION OPTIONS
-C, --clear -c, --read-clear -D, --console-off -d, --show-delta -E, --console-on -e, --reltime -F, --file file -f, --facility list -H, --human -k, --kernel -L, --color[=when] -l, --level list -n, --console-level level --noescape -P, --nopager -p, --force-prefix -r, --raw -S, --syslog -s, --buffer-size size -T, --ctime -t, --notime -u, --userspace -w, --follow -W, --follow-new -x, --decode -V, --version -h, --help
COLORS
subsys time timebreak alert crit err warn segfault
EXIT STATUS AUTHORS SEE ALSO REPORTING BUGS AVAILABILITY

Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-13 22:30 @216.73.216.150
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top