温馨提示×

如何检索debian日志

小樊
44
2026-10-24 16:08:15
栏目: 智能运维

在 Debian 系统中,日志的检索方式主要取决于你使用的初始化系统(init system)和日志服务。现代 Debian(≥8)默认使用 systemd + journald,但也保留了很多传统的日志文件。

下面按常见场景说明如何检索 Debian 日志。


一、使用 systemd 日志(journalctl,推荐)

1. 查看全部日志

journalctl

2. 实时查看日志(类似 tail -f)

journalctl -f

3. 查看某个服务的日志

journalctl -u nginx
journalctl -u ssh

4. 查看某时间段的日志

journalctl --since "2024-01-01 00:00:00" --until "2024-01-02 00:00:00"

5. 按优先级过滤(如只看来错误)

journalctl -p err

常见级别:

  • emerg
  • alert
  • crit
  • err
  • warning
  • info
  • debug

6. 查看内核日志

journalctl -k

7. 按用户或 PID 查

journalctl _UID=1000
journalctl _PID=1234

二、传统日志文件(/var/log)

Debian 仍保留很多文本日志:

常见日志位置

/var/log/syslog        # 系统日志(非 systemd 时最重要)
/var/log/messages      # 一般信息
/var/log/auth.log      # 认证、SSH 登录
/var/log/kern.log      # 内核日志
/var/log/dpkg.log      # 软件安装记录
/var/log/apt/          # apt 操作日志
/var/log/nginx/        # Nginx 日志
/var/log/mysql/        # MySQL 日志

常用检索命令

# 查看最后 100 行
tail -n 100 /var/log/syslog

# 实时查看
tail -f /var/log/auth.log

# 搜索关键字
grep "Failed password" /var/log/auth.log

# 结合时间
grep "Jan 10" /var/log/syslog

三、检索启动与硬件问题

1. 查看本次启动日志

journalctl -b

2. 查看上一次启动日志(需开启持久化)

journalctl -b -1

3. 开启 journal 持久化(重启不丢失)

sudo mkdir -p /var/log/journal
sudo systemctl restart systemd-journald

四、实用组合示例

查 SSH 暴力破解

grep "Failed password" /var/log/auth.log

查系统错误

journalctl -p err -b

查某个服务是否启动失败

systemctl status nginx
journalctl -u nginx -b

五、补充工具(可选)

  • less:分页查看
  • logrotate:日志轮转管理
  • rsyslog:传统 syslog 服务(如仍启用)

如果你能告诉我:

  • Debian 版本
  • 使用的服务(如 Nginx / Docker / SSH)
  • 想查“错误 / 登录 / 性能 / 启动”哪类日志

我可以给你更精确的命令。

0 踩