Linux 系统中的 syslog 是一个标准化的日志记录服务,用于收集和存储系统及应用程序生成的日志信息。这些日志对于系统监控、故障排查和安全审计至关重要。以下是 syslog 记录的主要信息分类及详细说明:
EXT4-fs error)dmesg 可直接查看内核缓冲区的日志。sshd:SSH 登录成功/失败记录。cron:定时任务的执行情况。apache2/nginx:Web 服务访问日志和错误。systemd:服务启动/停止日志(通过 journalctl 查看)。auth.log 或 secure 文件)。sudo 命令执行记录(包括用户、时间、命令)。su 用户切换日志。pam 模块生成,配置在 /etc/pam.d/ 中。iptables/nftables 丢弃的流量(DROP 规则触发)。dnsmasq 日志)。smartd 服务)。mdadm)。mount 错误)。syslog 接口记录的日志。logger 命令写入的日志。cron 执行的定时任务输出。/var/log/cron(RHEL/CentOS)/var/log/syslog(Debian/Ubuntu,标记为 CRON)/var/log/syslog(Debian/Ubuntu)/var/log/messages(RHEL/CentOS)/var/log/auth.log:认证相关。/var/log/kern.log:内核日志。/var/log/daemon.log:守护进程日志。syslog 按严重性分级,从高到低:
1. emerg (0) - 系统不可用。
2. alert (1) - 需立即处理。
3. crit (2) - 严重错误(如硬件故障)。
4. err (3) - 普通错误(服务启动失败)。
5. warning (4) - 警告(配置问题)。
6. notice (5) - 重要正常事件。
7. info (6) - 常规信息。
8. debug (7) - 调试信息。
/etc/rsyslog.conf 或 /etc/syslog.conf。logrotate 管理(配置在 /etc/logrotate.d/)。rsyslog 将日志发送到远程服务器。bash
tail -f /var/log/syslogbash
grep "err" /var/log/syslogbash
journalctl --since "2023-10-01" --until "2023-10-02"通过合理利用 syslog,管理员可以全面掌握系统状态,快速定位问题。如果需要更详细的日志分析,可以结合工具如 ELK Stack(Elasticsearch + Logstash + Kibana)或 Splunk。