在 Debian 系统中,日志是排查错误最重要的入口。下面从日志位置、查看方式、常见错误类型、分析思路、实用工具几个方面系统讲一下。
/var/log/
常见文件:
/var/log/syslog:系统总日志(最常用)/var/log/messages:部分系统信息/var/log/auth.log:登录、sudo、SSH/var/log/kern.log:内核日志/var/log/dpkg.log:软件安装/卸载/var/log/apt/:apt 相关/var/log/nginx/、/var/log/mysql/:服务日志Debian 9+ 默认使用 systemd:
journalctl
tail -f /var/log/syslog
或
journalctl -f
journalctl -u nginx
journalctl -u ssh
journalctl --since "2024-01-01 10:00" --until "2024-01-01 12:00"
journalctl -p err
journalctl -b
journalctl -b -p err
重点看:
failedtimeoutdependencysystemctl status 服务名
journalctl -u 服务名 -xe
-xe 会显示详细错误原因。
journalctl -u NetworkManager
dmesg | grep eth
dmesg | grep -i error
cat /var/log/kern.log | grep -i ext4
cat /var/log/auth.log
常见:
cat /var/log/dpkg.log
cat /var/log/apt/term.log
grep -i error /var/log/syslog
grep -i fail /var/log/syslog
ls -lht /var/log/
Debian 使用 logrotate:
/var/log/syslog.1
/var/log/syslog.2.gz
查看旧日志:
zcat /var/log/syslog.2.gz | less
journalctl(systemd 必备)dmesg(内核层)logwatch(日志汇总)lnav(日志可视化)grep / awk / sed(文本分析)假设 SSH 连不上:
systemctl status sshjournalctl -u ssh -xecat /var/log/auth.logss -tlnp | grep 22iptables -L如果你有具体错误日志或场景(比如某个服务起不来、系统启动黑屏、网络异常),可以把日志贴出来,我可以帮你逐行分析。