温馨提示×

centos虚拟机日志查看与管理

小樊
31
2025-11-29 16:27:01
栏目: 云计算

CentOS 虚拟机日志查看与管理

一 核心查看命令

  • 使用 journalctl(适用于 CentOS 7+ 的 systemd 系统):
    • 查看全部日志并按时间倒序到末尾:journalctl -xe
    • 查看最近 N 条:journalctl -n 100
    • 实时跟踪:journalctl -f
    • 按服务查看:journalctl -u nginx.service -f
    • 按时间范围:journalctl --since “2025-06-01” --until “2025-06-02”
    • 按启动轮次:journalctl -b(本次启动)、journalctl -b -1(上一次启动)
    • 按优先级:journalctl -p err -b(本次启动的错误级别)
    • 导出日志:journalctl -u sshd > sshd.log
  • 使用传统日志文件(位于 /var/log):
    • 常规系统消息:less /var/log/messages
    • 安全认证:sudo less /var/log/secure
    • 定时任务:less /var/log/cron
    • 启动引导:less /var/log/boot.log
    • 内核环缓冲:dmesg | less;实时内核日志:dmesg -w
    • 邮件服务:less /var/log/maillog
    • 审计日志:sudo less /var/log/audit/audit.log
  • 过滤与检索:
    • 关键字过滤:grep “error” /var/log/messages
    • 实时过滤:journalctl -f | grep “error”
    • 按用户过滤:journalctl _UID=1000
  • 登录类日志与工具:
    • 查看登录历史:last -f /var/log/wtmp
    • 查看失败登录:lastb -f /var/log/btmp
    • 查看所有用户最近登录:lastlog

二 日志文件与作用速查

路径 作用
/var/log/messages 常规系统消息(内核与服务)
/var/log/secure 认证、登录、sudo 等安全事件
/var/log/cron 定时任务执行记录
/var/log/boot.log 系统引导过程日志
/var/log/dmesg 内核环缓冲(驱动/硬件相关)
/var/log/maillog 邮件服务日志
/var/log/audit/audit.log 审计子系统日志
/var/log/wtmp 登录/注销历史(配合 last)
/var/log/btmp 失败登录尝试(配合 lastb)
/var/log/lastlog 所有用户最近一次登录信息
/var/log/yum.log YUM 包管理日志
/var/log/httpd/ Apache 访问与错误日志(若安装)
/var/log/mysqld.log MySQL 日志(若安装)

三 日志轮转与空间清理

  • 查看 systemd 日志占用:journalctl --disk-usage
  • 按时间保留日志(如保留最近 7 天):journalctl --vacuum-time=7d
  • 按体积保留日志(如保留最大 500M):journalctl --vacuum-size=500M
  • 清空单个传统日志文件(谨慎):truncate -s 0 /var/log/messages
  • 使用 logrotate 进行轮转(默认配置 /etc/logrotate.conf,应用配置在 /etc/logrotate.d/):
    • 常用策略示例:按周轮转、保留 4 份、压缩、日期后缀
    • 调试与强制执行:logrotate -d /etc/logrotate.conf(演练)、logrotate -f /etc/logrotate.conf(强制执行)
  • 安全加固(可选):对关键日志设置只追加属性,防止被篡改:chattr +a /var/log/messages;恢复:chattr -a /var/log/messages

四 集中化与审计增强

  • 远程日志(rsyslog 到远程服务器,UDP 示例):
    • 服务端:在 /etc/rsyslog.conf/etc/rsyslog.d/ 添加规则如:authpriv. @192.0.2.10:514*,重启服务:systemctl restart rsyslog
    • 客户端:将需要集中采集的日志按同样规则发送至服务器
  • 审计框架 auditd
    • 启用与规则:编辑 /etc/audit/audit.rules,按需添加系统调用/文件监控规则,重启 auditd 生效
    • 日志位置:/var/log/audit/audit.log,用于安全合规与入侵排查
  • 可视化与检索(可选):搭建 ELK Stack(Elasticsearch + Logstash + Kibana) 或采用 lnav 等工具进行多文件高亮与交互式分析

五 VirtualBox 宿主机侧日志

  • VirtualBox 管理器中选中虚拟机 → 设置日志,可直接查看虚拟机的启动、错误等日志,用于定位虚拟化层面的问题(与来宾系统内日志互补)

0