通过 SecureCRT 监控 Linux 系统日志
一 准备工作
- 使用 SSH 连接到目标服务器:在 SecureCRT 中新建会话,填写 IP/端口(22)/用户名/密码 并建立连接。为便于事后追溯,建议开启会话日志,路径为:Options → Global Options → Default Session → Logon Actions → Start logon,在 Log file 中使用变量命名,如 %h-%d-%H-%s.log(含义:%h 主机名、%d 日期、%H 小时、%s 会话名)。同时可在 View → View Log 打开内置日志查看器,并在 Options → Global Options → Terminal → Emulation → Scroll back 提升回滚缓冲区(如 50000 行)以查看更多历史输出。
二 实时监控 Linux 日志的常用命令
- 基于文件的实时查看
- 通用系统日志:tail -f /var/log/syslog(Debian/Ubuntu 等);tail -f /var/log/messages(RHEL/CentOS 等)。
- 认证与安全:tail -f /var/log/auth.log(登录认证、sudo 等)。
- 内核与启动:dmesg -T -w(内核环形缓冲,按时间显示并持续输出)。
- 基于 systemd 的日志
- 当前启动日志:journalctl -b。
- 实时查看全部:journalctl -f。
- 指定服务:journalctl -u nginx.service -f;按时间:journalctl -u nginx.service --since today。
- 详细错误定位:journalctl -xe。
- 快速检索与统计
- 关键字过滤:tail -n 200 /var/log/syslog | grep -i “error”。
- 统计出现次数:grep -i “error” /var/log/syslog | wc -l。
- 多关键字高亮:如 grep --color=auto -E “error|fail|timeout” /var/log/syslog。
- 分页与回溯
- 分页浏览:less /var/log/syslog(支持 /关键词 搜索、G 跳末尾、gg 跳开头)。
三 高效排查的组合用法
- 服务异常定位:先用 systemctl status nginx 判断服务状态,再用 journalctl -u nginx.service -xe 查看最近错误与上下文,必要时配合 tail -f /var/log/nginx/error.log 实时观察错误输出。
- 登录安全审计:实时查看认证日志 tail -f /var/log/auth.log,并用 grep “Failed password” /var/log/auth.log 检索失败登录尝试,结合时间范围缩小排查。
- 内核与硬件告警:使用 dmesg -T -w 观察驱动加载、磁盘/内存告警,配合 tail -f /var/log/kern.log 获取更持久的内核日志。
- 通用故障定位流程:连接后依次检查服务状态(systemctl status)、实时日志(journalctl -f 或 tail -f)、历史错误(journalctl -xe),必要时扩大时间窗口或检索关键字。
四 实用配置与排错建议
- 会话回放与留存:在 SecureCRT 中启用会话日志(见“准备工作”),并使用 View → View Log 快速检索关键字;为不同主机/时间自动命名日志文件,便于归档与比对。
- 日志轮转与清理:生产环境通常由 logrotate 管理日志大小与保留周期,避免磁盘被撑满;排查异常时注意日志可能已被轮转(如 syslog.1、syslog.2.gz),必要时用 zcat 或 zless 查看压缩旧日志。
- 权限与路径差异:读取部分日志(如 /var/log/auth.log、/var/log/kern.log)可能需要 sudo;不同发行版日志路径存在差异(如 /var/log/syslog 与 /var/log/messages),以实际系统为准。