在 Oracle Linux(基于 RHEL/CentOS 体系)上,查看日志主要有以下几种常用方式:
Oracle Linux 7/8/9 默认使用 systemd,日志由 journald 管理。
# 查看所有日志(从旧到新)
journalctl
# 实时查看日志
journalctl -f
# 查看本次启动后的日志
journalctl -b
# 查看某个服务的日志
journalctl -u httpd
journalctl -u oracle-database.service
# 按时间查看
journalctl --since "2024-01-01 00:00:00"
journalctl --since "1 hour ago"
# 按优先级(错误及以上)
journalctl -p err
即使使用 systemd,很多服务仍写文本日志:
# 系统日志
/var/log/messages
# 安全相关
/var/log/secure
# 启动日志
/var/log/boot.log
# 计划任务
/var/log/cron
# 内核日志
/var/log/dmesg
# 查看示例
tail -f /var/log/messages
less /var/log/secure
grep "error" /var/log/messages
journalctl -u 服务名
Oracle 日志通常在:
$ORACLE_BASE/diag/rdbms/*/trace/alert_*.log
$ORACLE_HOME/network/log/listener.log
# 实时跟踪
tail -f 日志文件
# 查看最后 100 行
tail -n 100 日志文件
# 搜索关键字
grep "ORA-" 日志文件
# 分页查看
less 日志文件
/etc/logrotate.conf
/etc/logrotate.d/
如果你有具体场景(如 Oracle 数据库、Web 服务、系统报错),可以告诉我,我可以给你更精确的命令。