温馨提示×

Debian日志级别如何调整

小樊
34
2026-08-23 04:20:06
栏目: 智能运维

在 Debian(以及大多数 Linux 系统)中,“日志级别”主要涉及 内核日志级别用户态日志服务(rsyslog / journald)级别。下面分情况说明如何调整。


一、内核日志级别(dmesg / printk)

1. 查看当前内核日志级别

cat /proc/sys/kernel/printk

输出示例:

7       4       1       7

含义:

当前控制台日志级别  默认级别  最小级别  引导时默认级别

2. 临时调整内核日志级别

sudo sysctl -w kernel.printk="4 4 1 7"

或:

echo "4 4 1 7" | sudo tee /proc/sys/kernel/printk

常见级别(数值越小越重要):

级别 含义
0 EMERG
1 ALERT
2 CRIT
3 ERR
4 WARNING
5 NOTICE
6 INFO
7 DEBUG

例如:只显示 WARNING 及以上

kernel.printk=4

3. 永久生效

编辑:

sudo nano /etc/sysctl.conf

添加:

kernel.printk = 4 4 1 7

生效:

sudo sysctl -p

二、systemd / journald 日志级别

1. journald 日志级别配置

编辑:

sudo nano /etc/systemd/journald.conf

关键参数:

MaxLevelStore=info
MaxLevelSyslog=info
MaxLevelKMsg=warning

可用值:

emerg alert crit err warning notice info debug

重启生效:

sudo systemctl restart systemd-journald

2. 查看 journal 日志级别

journalctl -p err
journalctl -p warning

三、rsyslog 日志级别(传统系统)

1. 配置文件

sudo nano /etc/rsyslog.conf
# 或
sudo nano /etc/rsyslog.d/*.conf

2. 示例规则

*.info;mail.none;authpriv.none;cron.none    /var/log/messages
authpriv.*                                  /var/log/secure

级别说明(从低到高):

debug < info < notice < warning < err < crit < alert < emerg

例如:只记录 err 及以上

*.err    /var/log/messages

3. 重启 rsyslog

sudo systemctl restart rsyslog

四、应用层日志级别(常见服务)

SSH

sudo nano /etc/ssh/sshd_config
LogLevel INFO

可选:QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG

sudo systemctl restart ssh

Nginx

error_log /var/log/nginx/error.log warn;

其他服务

如 MySQL、Docker 等,通常在其自身配置文件中设置日志级别。


五、快速对照表

场景 调整方式
内核日志 /proc/sys/kernel/printk
systemd journald.conf
传统日志 rsyslog.conf
单个服务 服务自身配置文件

如果你能说明 具体是哪种日志(内核 / systemd / rsyslog / 某个服务),我可以给你更精确的修改示例。

0