红联Linux门户
Linux帮助

Linux增加dmesg输出log的大小

发布时间:2015-12-01 10:22:15来源:linux网站作者:勤奋专注

【前因】目前Linux 3.4.0 默认Dmesg的buffer是128K,超出时前面的log就看不到了;


[解决方法]
方法1:1.1 使用 make menuconfig;

(make menuconfig -> General Setup -> Kernel log buffer size).

1.2  make bootimage or under kernel 文件夹下 执行make
方法2: 2.1 修改 kernel/printk.c 这个参数 __LOG_BUF_LEN
可以看到 __LOG_BUF_LEN equals (1 << CONFIG_LOG_BUF_SHIFT);
所以根本上是要修改: CONFIG_LOG_BUF_SHIFT
2.2 重新编译


【说明及参考文档】

其实dmesg 是读取 /proc/kmsg文件节点,所以也可以 cat /proc/kmsg 来模拟实时串口样子的打印方式;
参考自下面的网址,这里还有其他更详细的帮助,比如使用参数,只打印一次如何实现等等。
http://elinux.org/Debugging_by_printing


Linux系统中‘dmesg’命令处理故障和收集系统信息的7种用法:http://www.linuxdiyf.com/linux/1753.html