dmesg(display message或者driver message)是Linux下用于显示内核启动信息和运行时状态信息的命令。dmesg的日志级别可以通过以下几种方式进行设置:
dmesg命令的-l选项dmesg命令本身支持通过-l选项来设置日志级别。例如:
dmesg -l 4
这里的4代表KERN_INFO级别,其他级别包括:
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的日志级别。编辑/etc/sysctl.conf文件,添加或修改以下行:
kernel.printk = 4 4 1 7
这里的四个数字分别代表:
修改后,运行以下命令使更改生效:
sysctl -p
/proc/sys/kernel/printk你还可以直接通过读取和写入/proc/sys/kernel/printk文件来临时设置日志级别:
# 查看当前日志级别
cat /proc/sys/kernel/printk
# 设置日志级别为KERN_INFO (4)
echo 4 > /proc/sys/kernel/printk
journalctl(适用于systemd)如果你的系统使用systemd,可以使用journalctl命令来查看和管理日志,并且可以通过-b选项指定启动会话,通过-p选项指定日志级别:
# 查看当前启动会话的所有日志
journalctl -b
# 查看当前启动会话的错误及以上级别的日志
journalctl -b -p err
# 查看当前启动会话的警告及以上级别的日志
journalctl -b -p warn
/proc/sys/kernel/printk可能会影响系统的稳定性和安全性,请谨慎操作。通过以上方法,你可以灵活地设置和管理dmesg的日志级别。