dmesg (8)-打印或控制内核环形缓冲区

推荐:
[root@OS7 ~]# dmesg --human
[root@OS7 ~]# dmesg --decode --color --ctime --nopager
[root@OS7 ~]# dmesg --color --ctime --follow

描述:
dmesg 用于检查或控制内核环形缓冲区.
默认操作是从内核环形缓冲区读取所有消息.

用法:
dmesg [options]
dmesg --clear
dmesg --read-clear [options]
dmesg --console-level level
dmesg --console-on
dmesg --console-off

选项:
    支持的日志设施:
        kern - 内核消息
        user - 随机用户级消息
        mail - 邮件系统
      daemon - 系统守护进程
        auth - 安全/授权消息
      syslog - syslogd 内部生成的消息
         lpr - 行式打印机子系统
        news - 网络新闻子系统
    支持的日志级别(优先级):
       emerg - 系统无法使用
       alert - 必须立即采取行动
        crit - 临界条件
         err - 错误条件
        warn - 警告条件
      notice - 正常但重要的情况
        info - 信息性的
       debug - 调试级消息
 -C, --clear                 清除环形缓冲区.
 -c, --read-clear            打印后清除环形缓冲区内容.
 -D, --console-off           禁用向控制台打印消息.
 -d, --show-delta            显示消息之间花费的时间戳和时间增量. 如果与 --notime 一起使用, 则仅打印不带时间戳的时间增量.
 -e, --reltime               以人类可读的格式显示本地时间和增量.
 -E, --console-on            启用向控制台打印消息.
 -F, --file <file>           从文件中读取日志.
 -f, --facility <list>       将输出限制为已定义(逗号分隔)的设施列表. 例如 dmesg --facility=daemon 将只打印来自系统守护进程的消息. 对于所有支持的工具, 请参阅 dmesg --help 输出.
 -H, --human                 启用人类可读的输出. 另请参阅--color, --reltime 和--nopager.
 -k, --kernel                打印内核消息.
 -L, --color                 为重要信息着色.
 -l, --level <list>          将输出限制为已定义(逗号分隔)的级别列表. 例如 dmesg --level=err, warn 将仅打印错误和警告消息. 对于所有支持的级别, 请参阅 dmesg --help 输出.
 -n, --console-level <level> 设置将消息记录到控制台的级别. 级别是级别编号或级别名称的缩写. 对于所有支持的级别, 请参阅 dmesg --help 输出. 例如, -n 1 或 -n alert 会阻止所有消息(紧急(紧急)消息除外)出现在控制台上. 所有级别的消息仍会写入 /proc/kmsg, 因此 syslogd(8) 仍可用于精确控制内核消息出现的位置. 使用 -n 选项时, dmesg 不会打印或清除内核环形缓冲区.
 -P, --nopager               不要将输出通过管道传输到寻呼机, 寻呼机已启用 --human 输出.
 -r, --raw                   打印原始消息缓冲区, 即不剥离日志级别前缀. 请注意, 真正的原始格式取决于 dmesg(1) 读取内核消息的方法. /dev/kmsg 使用与 syslog(2) 不同的格式. 为了向后兼容, dmesg(1) 总是以 syslog(2) 格式返回数据. 来自 /dev/kmsg 的真实原始数据可以通过例如命令"dd if=/dev/kmsg iflag=nonblock"读取.
 -S, --syslog                强制使用 syslog(2) 内核接口来读取内核消息. 从内核 3.5.0 开始, 默认使用 /dev/kmsg 而不是 syslog(2).
 -s, --buffer-size <size>    使用大小的缓冲区来查询内核环形缓冲区. 默认为 16392. (默认内核 syslog 缓冲区大小最初为 4096, 自 1.3.54 起为 8192, 自 2.1.113 起为 16384.)如果您已将内核缓冲区设置为大于默认值, 则可以使用此选项查看整个缓冲区.
 -T, --ctime                 显示人类可读的时间戳(如果您使用了 SUSPEND/RESUME, 则可能不准确)
 -t, --notime                打印人类可读的时间戳. 时间戳可能不准确! 用于日志的时间源在系统 SUSPEND/RESUME 后不会更新.
 -u, --userspace             打印用户空间消息.
 -w, --follow                等待新消息. 此功能仅在具有可读 /dev/kmsg 的系统上受支持(自内核 3.5.0 起).
 -x, --decode                将设施和级别(优先级)编号解码为人类可读的前缀.
 -h, --help                  显示此帮助并退出
 -V, --version               输出版本信息并退出

[root@OS7 ~]# dmesg
[root@OS7 ~]# dmesg --clear
[root@OS7 ~]# dmesg --read-clear
[root@OS7 ~]# dmesg --console-off
[root@OS7 ~]# dmesg --show-delta
[root@OS7 ~]# dmesg --reltime
[root@OS7 ~]# dmesg --console-on
[root@OS7 ~]# dmesg --file /var/log/maillog  # 该目录下的日志文件, 基本都可查看.
[root@OS7 ~]# dmesg --facility kern  # 总共8种日志设备可选
[root@OS7 ~]# dmesg --human
[root@OS7 ~]# dmesg --kernel
[root@OS7 ~]# dmesg --color
[root@OS7 ~]# dmesg --level info  # 总共8种日志级别可选.
[root@OS7 ~]# dmesg --console-level info  # 总共8种日志级别可选.
[root@OS7 ~]# dmesg --nopager
[root@OS7 ~]# dmesg --raw
[root@OS7 ~]# dmesg --syslog
[root@OS7 ~]# dmesg --buffer-size 16392
[root@OS7 ~]# dmesg --ctime
[root@OS7 ~]# dmesg --notime
[root@OS7 ~]# dmesg --userspace
[root@OS7 ~]# dmesg --follow
[root@OS7 ~]# dmesg --decode
[root@OS7 ~]# dmesg --help
[root@OS7 ~]# dmesg --version

另请参阅:
syslogd(8)