Linux 增加dmesg 输出log的大小

【前因】目前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
要将dmesg输出为文件,你可以使用以下步骤: 1. 首先,确保你的虚拟机中已经添加了串行端口。你可以在虚拟机设置中添加串行端口,并将配置设置为使用输出文件,并指定文件目录。\[3\] 2. 启动Ubuntu,并使用root用户登录。 3. 修改/etc/default/grub文件。你可以使用命令sudo vi /etc/default/grub打开该文件。在文件中找到GRUB_CMDLINE_LINUX_DEFAULT这一行,并将其修改为GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"。保存并关闭文件。 4. 更新grub配置。运行以下命令使修改生效:sudo update-grub 5. 重新启动虚拟机。 6. 现在,你可以使用dmesg命令将输出重定向到文件中。例如,你可以使用以下命令将dmesg输出保存到一个名为dmesg.log的文件中:dmesg > dmesg.log 这样,dmesg输出将被写入到dmesg.log文件中。你可以在文件中查看和分析dmesg输出。 #### 引用[.reference_title] - *1* [讲解Linux下的Dmesg命令:格式化及过滤dmesg输出、清除环形缓冲区](https://blog.csdn.net/weixin_34910865/article/details/113553110)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [将虚拟机dmesg日志内容通过串口输出到windows下文件中](https://blog.csdn.net/weixin_52849254/article/details/130673880)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值