怎么在Linux利用Dmesg-N配置内核控制台日志记录等级以降低高负载下的IO

大明同学_4758

大明同学_4758

2026-06-08

490人浏览

原创

dmesg -n 仅控制控制台输出级别,不抑制内核日志记录;降低高负载i/o的关键是减少控制台刷屏,如设为dmesg -n 3(仅错误)或-n 0(禁用控制台),日志仍完整保留在环形缓冲区。

怎么在linux利用dmesg-n配置内核控制台日志记录等级以降低高负载下的io

dmesg -n 本身不配置“日志记录等级以降低 IO”,它只控制内核消息是否输出到控制台(console),不影响日志写入磁盘或环形缓冲区的保存行为。真正影响高负载下 I/O 的,是控制台日志级别过高导致大量消息被实时刷屏打印——比如设置 -n 7 后,内核调试信息高频涌向当前终端(尤其是串口、虚拟控制台),会触发频繁的字符设备写操作,增加 CPU 和 I/O 开销。

要降低高负载下的 I/O,核心思路是:减少控制台输出量,而非抑制内核日志本身。内核环形缓冲区(/dev/kmsg)仍正常记录,只是不往控制台“广播”。

以下是具体、安全、可落地的操作方式:

控制台日志级别设为更严格(推荐值:3 或 2)

sudo dmesg -n 3
  • 级别 3(KERN_ERR)仅显示错误类消息(如驱动加载失败、硬件故障)
  • 级别 2(KERN_CRIT)只显示严重错误(如内存校验失败、PCIe link down)
  • 这能大幅减少控制台刷屏,避免 printk() 触发底层 console 驱动(如 ttyS0、hvc0、tty1)的频繁 I/O

验证是否生效:

cat /proc/sys/kernel/printk
# 输出应类似:3 4 1 7 → 第一个数字即当前 console_loglevel

禁用控制台输出(彻底消除控制台 I/O)

若系统无需任何控制台日志(如云服务器、容器宿主机、headless 设备),可设为 0:

onewo-rtlinux
onewo-rtlinux

Linux 实时编程助手。生成、审查并修改用于周期性控制任务和中断驱动程序的 C 代码。强制实施实时调度策略。

下载
sudo dmesg -n 0
  • 级别 0(KERN_EMERG)理论上只在系统崩溃前最后几条消息才输出,实际等效于关闭控制台日志
  • 内核日志仍在环形缓冲区中,dmesg、journalctl -k、/dev/kmsg 均可正常读取
  • 不会丢失日志,仅停止向 console 设备写入

⚠️ 注意:设为 0 后,你将看不到启动过程中的任何控制台输出(包括 GRUB、内核解压、initramfs 消息),仅适用于已稳定运行且通过 SSH 管理的系统。

配合内核启动参数,避免运行时反复调整

临时 dmesg -n 在重启后失效。如需长期生效,应在内核启动时固化低控制台级别:

编辑 /etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash loglevel=3"

然后更新并重启:

sudo update-grub && sudo reboot
  • loglevel=3 等效于 dmesg -n 3,且在早期启动阶段即生效
  • quiet splash 进一步屏蔽非关键启动信息,减少初始 I/O

补充:不推荐但需知晓的误区

  • ❌ dmesg -n 8 或更高:无效,内核日志级别最大为 7
  • ❌ 用 sysctl -w kernel.printk="3 3 1 7" 单独调第一项:效果同 dmesg -n 3,但不如直接用 dmesg -n 直观
  • ❌ 关闭 klogd 或 rsyslog 来减 I/O:现代系统多用 journald,且 dmesg 本身不依赖它们;禁用日志服务反而丢失持久化能力

不复杂但容易忽略

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

840

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2432

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

816

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

709

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

374

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2176

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4012

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

647

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习