温馨提示×

怎样用命令查debian日志

小樊
45
2026-10-04 02:37:13
栏目: 智能运维

在 Debian 系统中,查看日志的方法主要取决于你使用的 init 系统(通常是 systemd)以及你想查看哪类日志。下面按常见场景说明。


一、使用 journalctl(推荐,systemd 系统)

Debian 8 及以后版本默认使用 systemd,日志由 systemd-journald 管理。

1. 查看所有系统日志

sudo journalctl

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

sudo journalctl -f

3. 查看某次启动的日志

sudo journalctl -b

查看上一次启动:

sudo journalctl -b -1

4. 查看某个服务的日志

sudo journalctl -u nginx
sudo journalctl -u ssh

实时查看服务日志:

sudo journalctl -u nginx -f

5. 按时间筛选

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

6. 按优先级(错误日志)

sudo journalctl -p err

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

即使使用 systemd,很多程序仍会写日志到 /var/log。

常见日志文件

/var/log/syslog        # 系统日志(非 systemd)
/var/log/auth.log      # 登录、sudo、ssh 认证
/var/log/kern.log      # 内核日志
/var/log/dpkg.log      # 软件安装记录
/var/log/nginx/        # Nginx 日志
/var/log/apache2/      # Apache 日志

查看方式

less /var/log/syslog
tail -f /var/log/auth.log
grep "Failed password" /var/log/auth.log

三、查看内核日志(dmesg)

查看启动信息和硬件错误

dmesg

实时查看:

sudo dmesg -w

四、快速排错示例

查看 SSH 登录失败

sudo journalctl -u ssh | grep "Failed"

或

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

查看系统是否重启过

last reboot

或

sudo journalctl -b -1

五、如果 journalctl 没有日志

可能是 journal 未持久化,可检查:

ls /var/log/journal

若为空,可启用:

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

如果你有 具体场景(如查网卡、查崩溃、查某个服务),可以告诉我,我给你更精确的命令。

0 踩