CentOS查日志

在 CentOS 系统中,查看日志是系统维护和故障排查的重要技能。以下是常用的日志查看方法和工具:

1. 基本日志位置

CentOS 使用systemd管理服务,主要日志存储在:

  • /var/log/messages:系统主日志
  • /var/log/secure:认证和安全相关日志
  • /var/log/maillog:邮件服务日志
  • /var/log/httpd/:Apache 服务日志目录
  • /var/log/mysqld.log:MySQL 数据库日志

2. 查看日志的命令

cat - 一次性显示全部内容
bash 复制代码
cat /var/log/messages

适合小文件,但大文件会刷屏。

more/less - 分页查看
bash 复制代码
more /var/log/messages     # 向前翻页
less /var/log/messages     # 支持上下键和搜索(/关键词)
tail - 实时跟踪最新内容
bash 复制代码
tail -n 20 /var/log/messages    # 显示最后20行
tail -f /var/log/messages       # 实时监控新增内容(按Ctrl+C退出)
grep - 搜索特定内容
bash 复制代码
grep "error" /var/log/messages          # 搜索包含"error"的行
grep -i "warning" /var/log/messages     # 忽略大小写搜索
grep -A 5 -B 3 "failed" /var/log/secure # 显示匹配行前后的上下文

3. 使用journalctl(systemd 日志)

CentOS 7+ 使用journalctl管理系统服务日志:

查看全部日志
bash 复制代码
journalctl
查看特定服务日志
bash 复制代码
journalctl -u httpd.service    # Apache服务日志
journalctl -u mysqld.service   # MySQL服务日志
实时监控
bash 复制代码
journalctl -f                 # 实时显示最新日志
journalctl -u sshd.service -f # 实时监控SSH服务
按时间过滤
bash 复制代码
journalctl --since "2025-06-17 09:00" --until "2025-06-17 12:00"

4. 高级技巧

按用户过滤
bash 复制代码
journalctl _UID=1000          # 查看特定用户的日志
按优先级过滤
bash 复制代码
journalctl -p err             # 只显示错误级别日志
组合命令
bash 复制代码
journalctl -u nginx.service | grep "404" | less

5. 日志轮转(Log Rotation)

日志文件会定期轮转以避免过大,配置文件位于:

  • /etc/logrotate.conf:全局配置
  • /etc/logrotate.d/:服务特定配置

手动触发轮转:

bash 复制代码
logrotate -f /etc/logrotate.conf

6. 权限问题

查看某些日志需要 root 权限,使用sudo

复制代码
sudo tail /var/log/secure

7. 第三方工具

  • lnav :交互式日志查看器,支持多文件和高亮

    bash 复制代码
    sudo yum install lnav -y
    lnav /var/log/messages
  • ELK Stack:企业级日志管理(Elasticsearch + Logstash + Kibana)

示例场景

  1. 查看 SSH 登录失败记录

    bash 复制代码
    grep "Failed password" /var/log/secure
  2. 监控 Apache 访问日志

    bash 复制代码
    tail -f /var/log/httpd/access_log
  3. 查看系统启动日志

    bash 复制代码
    journalctl -b

掌握这些方法后,你可以高效地定位系统问题、监控服务状态和审计安全事件。根据具体需求选择合适的工具和参数组合即可。

相关推荐
乌托邦的逃亡者41 分钟前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
ldj20201 小时前
Jenkins 流水线配置
运维·jenkins
古希腊数通小白(ip在学)3 小时前
stp拓扑变化分类
运维·服务器·网络·智能路由器
l1x1n05 小时前
Vim 编辑器常用操作详解(新手快速上手指南)
linux·编辑器·vim
12点一刻5 小时前
搭建自动化工作流:探寻解放双手的有效方案(2)
运维·人工智能·自动化·deepseek
未来之窗软件服务5 小时前
东方仙盟AI数据中间件使用教程:开启数据交互与自动化应用新时代——仙盟创梦IDE
运维·人工智能·自动化·仙盟创梦ide·东方仙盟·阿雪技术观
ajassi20006 小时前
开源 python 应用 开发(三)python语法介绍
linux·python·开源·自动化
o不ok!6 小时前
Linux面试问题-软件测试
linux·运维·服务器
DaxiaLeeSuper7 小时前
Prometheus+Grafana+node_exporter监控linux服务器资源的方案
linux·grafana·prometheus
尽兴-8 小时前
如何将多个.sql文件合并成一个:Windows和Linux/Mac详细指南
linux·数据库·windows·sql·macos