Linux修改dmesg输出的日志级别的步骤详解

 更新时间:2024年07月01日 14:11:49   作者:zclinux_  
要修改 /proc/sys/kernel/printk 文件的内容以更改 dmesg 输出的级别,可以通过命令行进行操作,这个文件包含四个值,分别代表内核消息的不同级别,本文给大家介绍了Linux修改dmesg输出的日志级别的步骤,需要的朋友可以参考下

修改dmesg输出的级别

要修改 /proc/sys/kernel/printk 文件的内容以更改 dmesg 输出的级别,可以通过命令行进行操作。这个文件包含四个值,分别代表内核消息的不同级别。通过修改这些值,可以控制内核消息的输出级别。

/proc/sys/kernel/printk 文件中的四个值分别代表:

  1. console_loglevel:控制在控制台上显示的最低消息级别。
  2. default_message_loglevel:新消息的默认级别。
  3. minimum_console_loglevel:控制台上显示的最小消息级别。
  4. default_console_loglevel:控制台上显示的默认消息级别。

以下是如何查看和修改这些值的步骤:

查看当前 printk 设置

cat /proc/sys/kernel/printk

这会输出四个值,例如:

7 4 1 7

修改 printk 设置

要修改这些值,可以使用 echo 命令。假设我们要将 console_loglevel 修改为 4(默认显示警告级别及以上的消息),可以执行以下命令:

echo "4 4 1 7" > /proc/sys/kernel/printk

逐个值解释及示例

假设你想要以下配置:

  • console_loglevel 设置为 3 (只显示错误信息)
  • default_message_loglevel 设置为 4 (新消息的默认级别为警告)
  • minimum_console_loglevel 保持为 1 (紧急消息)
  • default_console_loglevel 设置为 4 (警告级别)

你可以执行:

echo "3 4 1 4" > /proc/sys/kernel/printk

永久保存设置

这些更改在系统重启后将恢复默认。要使其永久生效,可以将修改添加到 /etc/sysctl.conf 文件中:

编辑 /etc/sysctl.conf 文件:

sudo nano /etc/sysctl.conf

添加以下行:

kernel.printk = 3 4 1 4

保存并关闭文件。然后执行以下命令以应用更改:

sudo sysctl -p

这样可以确保在每次系统启动时都应用这些设置。

临时会话生效

dmesg -n 命令用于设置当前会话中内核消息的日志级别(console_loglevel)。这会影响通过 dmesg 命令查看的内核消息的详细程度。

dmesg -n 用法

dmesg -n 命令的格式如下:

dmesg -n <level>

其中 <level> 是一个数字,表示消息的日志级别。常用的日志级别如下:

  • 0 (KERN_EMERG): 紧急情况,系统不可用
  • 1 (KERN_ALERT): 需要立即采取措施
  • 2 (KERN_CRIT): 严重情况
  • 3 (KERN_ERR): 错误
  • 4 (KERN_WARNING): 警告
  • 5 (KERN_NOTICE): 正常但需要注意的情况
  • 6 (KERN_INFO): 信息
  • 7 (KERN_DEBUG): 调试消息

例如,要将内核消息级别设置为仅显示错误及以上的消息,可以使用:

dmesg -n 3

关系与区别

dmesg -n 命令实际修改的是 /proc/sys/kernel/printk 文件中的 console_loglevel 值。使用 dmesg -n 修改日志级别相当于使用 echo 命令修改 /proc/sys/kernel/printk 中的第一个值。例如:

dmesg -n 3

相当于:

echo "3 4 1 7" > /proc/sys/kernel/printk

假设其他值保持不变。

总结

  • dmesg -n 命令仅影响当前会话内核消息的日志级别。
  • 修改 /proc/sys/kernel/printk 文件可以通过 echo 命令直接进行,影响立即生效。
  • 要使这些设置永久生效,应将其写入 /etc/sysctl.conf 文件并使用 sysctl -p 应用。

通过这两种方法,可以灵活地控制系统内核消息的输出级别,以适应不同的调试和监控需求。

到此这篇关于Linux修改dmesg输出的日志级别的步骤详解的文章就介绍到这了,更多相关Linux修改dmesg日志级别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS使用expect批量远程执行脚本和命令

    CentOS使用expect批量远程执行脚本和命令

    这篇文章主要介绍了CentOS使用expect批量远程执行脚本和命令,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Centos 7系统虚拟机桥接模式详解

    Centos 7系统虚拟机桥接模式详解

    这篇文章主要给大家介绍了关于Centos 7系统虚拟机桥接模式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-10-10
  • nmap扫描服务器端口(远程桌面端口)

    nmap扫描服务器端口(远程桌面端口)

    nmap是Linux下常用的端口扫描工具,它可以检测主机是否在线,是否开启了某个服务端口,使用了何种操作系统等,下面是安装方法和使用方法
    2013-12-12
  • linux中网络配置工具nmcli的用法解读

    linux中网络配置工具nmcli的用法解读

    这篇文章主要介绍了linux中网络配置工具nmcli的用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2026-04-04
  • Linux之systemV共享内存方式

    Linux之systemV共享内存方式

    这篇文章主要介绍了Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 在 Linux 终端中查找域名 IP 地址的命令(五种方法)

    在 Linux 终端中查找域名 IP 地址的命令(五种方法)

    本教程介绍了如何在 Linux 终端验证域名或计算机名的 IP 地址。我们将教你如何有效使用这些命令在 Linux 终端中识别多个域的 IP 地址信息
    2019-12-12
  • CentOS6 配置Nginx,MySql,php-fpm开机启动的方法

    CentOS6 配置Nginx,MySql,php-fpm开机启动的方法

    这篇文章主要介绍了CentOS6 配置Nginx,MySql,php-fpm开机启动的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • linux后台运行的几种方式(小结)

    linux后台运行的几种方式(小结)

    这篇文章主要介绍了linux后台运行的几种方式(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • linux中串口调试工具minicom的使用详解

    linux中串口调试工具minicom的使用详解

    minicom 是 Linux 下的一个串口终端工具,主要用于与串口设备交互,本文主要来和大家聊聊minicom 的详细使用教程,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-12-12
  • Linux服务器磁盘空间不足的排查与处理方法

    Linux服务器磁盘空间不足的排查与处理方法

    在日常维护 Linux 服务器时,我们经常会遇到这样的场景:系统报错提示磁盘空间不足,今天就以一次真实的排查过程为例,分享如何科学地处理大文件与日志,需要的朋友可以参考下
    2025-12-12

最新评论