CentOS文件系统日志查看方法
journalctl是CentOS 7及以上版本默认的日志管理工具,整合了systemd服务的日志,支持强大的过滤和实时查看功能。
journalctl,会显示系统所有日志条目(按时间倒序排列)。journalctl -f(类似tail -f),可实时监控新产生的日志(如服务启动、错误信息)。-u参数指定服务名,例如journalctl -u httpd查看Apache服务日志,journalctl -u sshd查看SSH服务日志。--since和--until参数指定时间段,例如journalctl --since "2025-10-01" --until "2025-10-30"查看10月的日志。-p参数指定日志级别,例如journalctl -p err查看所有错误级别日志(包括emerg、alert、crit、err)。journalctl -b查看本次系统启动的日志,journalctl -b -1查看上一次启动的日志。CentOS的日志文件默认存储在/var/log目录下,部分服务仍会写入传统日志文件,适合需要直接查看原始日志的场景。
/var/log/messages记录系统启动、服务运行、网络连接等通用信息,可使用cat(快速查看)、less(分页查看,按q退出)或tail -f(实时监控)命令。/var/log/secure记录用户认证、sudo使用、SSH登录等安全事件,例如grep "Failed password" /var/log/secure可筛选暴力破解尝试。dmesg命令查看内核启动和运行时的日志(如硬件检测、驱动加载),cat /var/log/dmesg查看持久化的内核日志。/var/log/httpd/access_log(访问日志)、/var/log/httpd/error_log(错误日志);/var/log/nginx/access.log、/var/log/nginx/error.log。/var/log/mysql/error.log记录数据库错误信息。/var/log/yum.log记录软件包安装、更新、删除的日志。tail -f /var/log/日志文件(如tail -f /var/log/messages),当文件有新内容时立即显示,适合排查正在发生的故障。grep "关键字" /var/log/日志文件(如grep "ERROR" /var/log/messages),筛选包含特定关键词的日志行,快速定位问题。tail -f与grep结合,例如tail -f /var/log/messages | grep "ERROR",实时监控并过滤错误日志,提升排查效率。若偏好图形界面,可使用以下工具简化日志查看:
sudo yum install lnav,安装后运行lnav即可启动。logwatch --output text查看文本报告。/var/log/secure)需要root权限才能查看,建议使用sudo(如sudo tail /var/log/secure)。logrotate工具自动压缩、删除旧日志(如/var/log/messages每月轮转一次),避免日志文件过大占用磁盘空间。可通过less /etc/logrotate.conf查看轮转配置。