在 Debian 系统中,查看日志的方法主要取决于你使用的 init 系统(通常是 systemd)以及你想查看哪类日志。下面按常见场景说明。
journalctl(推荐,systemd 系统)Debian 8 及以后版本默认使用 systemd,日志由 systemd-journald 管理。
sudo journalctl
sudo journalctl -f
sudo journalctl -b
查看上一次启动:
sudo journalctl -b -1
sudo journalctl -u nginx
sudo journalctl -u ssh
实时查看服务日志:
sudo journalctl -u nginx -f
sudo journalctl --since "2024-01-01 00:00:00" --until "2024-01-02 00:00:00"
sudo journalctl -p err
即使使用 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
实时查看:
sudo dmesg -w
sudo journalctl -u ssh | grep "Failed"
或
grep "Failed password" /var/log/auth.log
last reboot
或
sudo journalctl -b -1
可能是 journal 未持久化,可检查:
ls /var/log/journal
若为空,可启用:
sudo mkdir -p /var/log/journal
sudo systemctl restart systemd-journald
如果你有 具体场景(如查网卡、查崩溃、查某个服务),可以告诉我,我给你更精确的命令。