CentOS系统的日志文件集中存储在/var/log/目录下,常见日志文件及用途如下:
/var/log/messages:系统主日志,记录系统启动、运行、关闭及一般服务的信息(如内核、网络、服务等)。/var/log/secure(或/var/log/auth.log,部分新系统):安全相关日志,记录用户认证(登录/登出)、授权失败(如密码错误)、sudo使用等事件。/var/log/httpd/:Apache HTTP服务器日志目录,包含access_log(访问日志,记录请求URL、状态码等)和error_log(错误日志,记录服务器错误、CGI脚本问题等)。/var/log/mysql/(或/var/log/mysqld.log):MySQL数据库日志,记录数据库错误、查询日志(需开启)、慢查询等信息。/var/log/boot.log:系统启动日志,记录开机过程中各服务的启动状态(成功/失败)。/var/log/yum.log:YUM包管理日志,记录通过YUM安装、更新、删除软件包的操作记录。基础查看工具
cat:一次性显示整个日志文件内容(适合小文件,大文件会刷屏)。cat /var/log/messagesless/more:分页查看日志(less支持上下键翻页、/关键词搜索,更灵活)。less /var/log/securetail:查看文件末尾内容(-n指定行数,-f实时监控新增日志)。tail -n 20 /var/log/messages(查看最后20行);tail -f /var/log/httpd/access_log(实时监控Apache访问日志)。日志搜索与过滤
grep:搜索日志中的特定关键词(支持正则表达式、忽略大小写、显示上下文)。grep "ERROR" /var/log/messages(搜索错误信息);grep -i "warning" /var/log/syslog(忽略大小写搜索警告);grep -A 5 -B 3 "failed" /var/log/secure(显示匹配行及前后5行/3行上下文)。systemd日志管理(journalctl)
CentOS 7及以上系统使用systemd管理日志,journalctl是核心工具,可查看、过滤系统服务日志:
journalctljournalctl -u httpd(Apache服务)、journalctl -u mysqld(MySQL服务)。journalctl --since "2025-10-01" --until "2025-10-28"(查看10月1日至28日的日志)。journalctl -f(类似tail -f,实时显示最新日志)。journalctl -p err(仅显示错误级别日志)。logrotate工具自动管理日志文件(如压缩旧日志、删除超过7天的日志),配置文件位于/etc/logrotate.conf(全局)和/etc/logrotate.d/(服务特定)。lnav:交互式日志查看器,支持多文件对比、语法高亮、自动解析日志格式(安装:sudo yum install lnav)。通过以上方法,可快速定位CentOS系统中的日志文件,并根据需求选择合适的工具查看、分析日志内容。