温馨提示×

如何过滤debian message

小樊
47
2026-09-10 01:00:05
栏目: 智能运维

在 Debian(以及大多数 Linux 系统)里,**“message”**通常指以下几类日志/消息,不同场景过滤方式不同。下面按常见需求给你总结:


一、过滤 systemd 日志(journalctl)

Debian 默认用 systemd-journald 管理日志。

1. 按服务过滤

journalctl -u nginx.service
journalctl -u ssh.service

2. 按优先级过滤(重要)

journalctl -p err        # 只显示错误及以上
journalctl -p warning    # warning 及以上

3. 按时间过滤

journalctl --since "2024-01-01"
journalctl --since "1 hour ago"

4. 按关键字过滤

journalctl | grep "error"
journalctl -u nginx | grep "timeout"

5. 只看内核消息

journalctl -k

二、过滤传统 syslog(/var/log)

如果你使用的是 rsyslog:

1. 查看并过滤文件

grep "error" /var/log/syslog
grep "sshd" /var/log/auth.log

2. 实时过滤

tail -f /var/log/syslog | grep "cron"

3. 按级别过滤(rsyslog 规则)

编辑:

/etc/rsyslog.conf

例如只记录错误:

*.err    /var/log/errors.log

三、过滤 dmesg(内核启动消息)

dmesg | grep "usb"
dmesg -l err,warn

四、过滤桌面/用户消息(DBus / notify)

journalctl --user

五、常见实用组合示例

# 最近 10 分钟的错误
journalctl --since "10 min ago" -p err

# 某个 IP 的登录失败
grep "Failed password" /var/log/auth.log | grep "192.168.1.1"

如果你能说明:

  • 是 系统日志 / 应用日志 / 内核消息
  • 想 实时看 / 查历史 / 写规则自动过滤

我可以给你更精确的命令或配置文件示例。

0 踩