将 Linux 内核日志缓冲区扩大 2M 以上



我正在收集某种 Linux 内核活动。我在内核源代码中放置了多个 printk 语句,并希望在常规内核活动中监视这些语句。不幸的是,我已经意识到内核日志缓冲区大小(CONFIG_LOG_BUF_SHIFT)不能超过2^21,这基本上等于2M条目。

有没有其他方法可以记录超过2M的内核消息?

您可以在/boot/grub/grub.conf中将内核日志缓冲区设置为log_buf_len=4M。这应该会将日志缓冲区大小增加到 4 MiB。请注意,您还可以在引导期间编辑grub,并将log_buf_len=4M附加到以 kernel ... 开头的行尾。

CONFIG_LOG_BUF_SHIFT显示内核日志缓冲区的默认大小而不是最大大小,则可以将其设置为更大的值,但需要重新编译内核。

ex:
2 ^ 19 = 512 KiB
2 ^ 20 = 1 MiB
2 ^ 21 = 2 MiB
2 ^ 22 = 4 MiB

您使用的是哪种版本的Linux,这在SuSE和RHEL上效果很好。

相关内容

  • 没有找到相关文章

最新更新