在 Debian 系统中,日志文件的位置和管理方式取决于你使用的 init 系统(Debian 默认使用 systemd,日志由 journald 管理),以及传统的日志文件方式。
下面分情况说明:
journalctl
常用命令:
journalctl -xe # 查看最近错误日志
journalctl -b # 本次启动的日志
journalctl -b -1 # 上一次启动的日志
journalctl -u nginx # 查看某个服务(如 nginx)
journalctl --since "2024-01-01" --until "2024-01-02"
/var/log/journal/
(如果不存在,说明 journald 只存在内存中)
即使使用 systemd,很多程序仍会写文本日志:
/var/log/syslog # 系统总体日志(重要)
/var/log/auth.log # 认证、SSH 登录
/var/log/kern.log # 内核日志
/var/log/dpkg.log # 软件安装/卸载
/var/log/apt/ # apt 相关
/var/log/boot.log # 启动日志
/var/log/messages # 部分系统有
查看示例:
tail -f /var/log/syslog
less /var/log/auth.log
很多服务有独立日志目录:
/var/log/nginx/
/var/log/mysql/
/var/log/apache2/
/var/log/redis/
可能原因:
rsyslog 没装(Debian 最小化安装常见)apt install rsyslog
mkdir -p /var/log/journal
systemctl restart systemd-journald
journalctl -p err # 只看错误
dmesg # 内核启动信息
如果你能告诉我:
我可以给你更精确的命令。