dmesg(display message,显示消息)是一个Linux/Unix系统中查看内核运行时消息的命令。它会输出内核启动和运行时产生的大量日志信息,包括硬件信息、内核模块信息、系统错误信息等等。该命令通常用于调试系统问题,以及获取系统运行状态和性能信息。
选项和参数:
-h,--help:显示帮助信息。
-c,--clear:清空记录缓冲区。
-s,--buffer-size :设置缓冲区大小,默认为16384字符。
-T,--time-format :设置时间格式,默认为内核默认格式。
-u,--userspace:仅显示用户空间产生的消息。
-k,--kernel:仅显示内核空间产生的消息。
-n,--console-level :设置控制台记录的最低日志级别。
-f,--facility :设置日志设备,如kern、auth、user等。
-e,--console-on:记录到控制台。
-r,--raw:输出未加工的信息。
示例:
1. 显示最近200条内核日志信息:
dmesg | tail -n 200
2. 清空dmesg记录缓冲区:
dmesg --clear
3. 仅显示用户空间产生的dmesg信息:
dmesg --userspace
4. 显示最近5分钟内的内核日志信息:
dmesg --time-format iso -T \'%Y-%m-%dT%H:%M:%S\' | grep \"$(date --date=\'5 minutes ago\' \'+%Y-%m-%dT%H:%M:%S\')\"
注意事项:
1. dmesg输出的日志信息可能很长,可以加上管道符“|”加上其他命令进行过滤和提取需要的信息。
2. dmesg输出的信息只是系统运行时产生的内核消息,不包括系统日志(如/var/log/messages),不建议用来替代系统日志查看工具。