debian日志包含哪些错误
小樊
45
2026-01-02 22:12:41
Debian日志中的常见错误与定位方法
一 日志体系与错误级别
- Debian 使用 rsyslog/syslog 统一记录日志,常见日志文件位于 /var/log:系统全局日志 /var/log/syslog,认证与安全日志 /var/log/auth.log,内核日志 /var/log/kern.log,引导日志 /var/log/boot.log 等。日志按“设施(facility)× 优先级(priority)”分类,优先级从 emerg(0) 到 debug(7),其中 err、crit、alert、emerg 通常被视为错误级别,需要重点关注。
二 常见错误类别与典型表现
- 系统与日志服务
- 配置错误:如 /etc/rsyslog.conf 或 /etc/rsyslog.d/ 配置不当,导致日志未写入或写入异常。
- 服务未运行:rsyslog 未启动,系统将无法按预期记录日志。
- 日志级别设置不当:级别过高会“吞掉”错误,过低会产生海量日志。
- 磁盘空间不足:日志目录所在分区满,导致写入失败或日志截断。
- 包管理与 APT
- GPG 错误:更新索引时提示缺少公钥或签名验证失败。
- 锁文件冲突:出现 E: Could not open lock file,多为并发的 APT/DPKG 进程所致。
- 依赖问题:安装/升级时依赖不满足。
- 空间不足:apt-get 操作报 No space left on device。
- 网络问题:无法连接软件源服务器(DNS/路由/防火墙等)。
- 认证与登录
- 登录失败、暴力破解尝试、PAM/SSH 认证异常,集中在 /var/log/auth.log。
- 内核与网络
- 内核报错(如驱动、文件系统、网络栈异常)记录在 /var/log/kern.log。
- 网络层异常样例:UDP: bad checksum、UDP: short packet、错误的 ICMP 报文、TCP window shrinking 等(部分属于对端异常或偶发畸形报文,需结合业务判断)。
- 应用与服务
- 数据库等应用错误:如 MySQL ERROR 1698 (28000): Access denied(账户权限/密码错误)。
- 开发语言运行时(如 Golang)常见:nil pointer dereference、index out of range、interface conversion panic、文件权限/不存在、协程泄漏、Context 使用不当、HTTP 错误处理缺失等(取决于应用自身日志配置)。
三 快速定位与排查命令
- 实时查看全局日志与错误级别:
- 查看本次启动日志:journalctl -b
- 仅看错误级别:journalctl -b -p err
- 跟踪最新日志:tail -f /var/log/syslog
- 按服务/单元查看:
- 查看某服务日志:journalctl -u <service_name>
- 认证与安全相关:
- 查看登录与认证:tail -f /var/log/auth.log
- 内核与网络问题:
- 查看内核日志:tail -f /var/log/kern.log
- 包管理问题:
- 更新索引:sudo apt-get update
- 检查锁与进程:ps aux | grep apt;必要时等待或终止占用锁的进程
- 清理空间后重试(若报磁盘满)
四 配置与维护要点
- 调整日志级别与过滤规则:编辑 /etc/rsyslog.conf 或 /etc/rsyslog.d/*.conf,例如将内核日志设为仅记录严重错误:kern.crit /dev/console;或全局仅记录 crit 及以上:*.crit /var/log/crit.log;修改后重启服务:sudo systemctl restart rsyslog。
- 日志轮转与容量控制:通过 /etc/logrotate.conf 与 /etc/logrotate.d/rsyslog 配置按日/周轮转、保留份数与压缩,防止因日志过大导致磁盘被占满或写入失败。