日期:2014-05-16  浏览次数:20715 次

linux dmesg命令学习

dmesg命令用来显示linux开机信息,kernel会将开机信息存储到指定的ring buffer中。
我们可以使用如下的命令查看linux开机信息,
sh-# type dmesg
dmesg is /bin/dmesg
sh-# dmesg > /tmp_fs/dmesg.txt
sh-# ls -l /tmp_fs/dmesg.txt
-rw-r--r-- 1 root root 58889 Jan  1 00:05 /tmp_fs/dmesg.txt

如下命令会先打印出ring buffer,然后再将ring buffer清除。
sh-# dmesg -c

如下命令用来设置kernel ring buffer大小。
sh-# dmesg -s 8096

如下命令用来设定kernel输出到控制台的log level,即printk level。
sh-# cat /proc/sys/kernel/printk
1       4       1       7
sh- dmesg -n 2
sh- cat /proc/sys/kernel/printk
2       4       1       7

sh-# ls -l /proc/kmsg
-r-------- 1 root root 0 Jan  1 00:09 /proc/kmsg

待解决问题:
1. dmesg打印的linux开机信息是从/proc/kmsg中读取的吗?
2. 为什么我的系统中找不到/var/log/dmesg这个文件?
3. linux ring buffer是什么?

1楼boyxulin1986昨天 18:07
自己必须顶自己