插件窝 干货文章 linux系统日志怎么查看

linux系统日志怎么查看

日志 查看 log journalctl 668    来源:    2025-04-06

在Linux系统中,查看系统日志是排查问题、监控系统状态的重要操作。以下是几种常用的日志查看方法及工具:


1. 使用 journalctl(Systemd系统日志)

适用于大多数现代Linux发行版(如Ubuntu 18.04+、CentOS 7+等),用于查看Systemd管理的服务日志。

# 查看所有日志(默认分页显示)
journalctl

# 查看指定服务的日志(如sshd)
journalctl -u sshd

# 查看最近日志并实时刷新(类似tail -f)
journalctl -f

# 按时间筛选(如查看今天日志)
journalctl --since today

# 按优先级过滤(如仅显示错误日志)
journalctl -p err

2. 查看传统日志文件(/var/log目录)

Linux系统日志通常存储在/var/log目录下,常见日志文件包括:

# 系统核心日志(内核、启动消息)
cat /var/log/messages      # CentOS/RHEL
cat /var/log/syslog        # Ubuntu/Debian

# 认证相关日志(登录、sudo等)
cat /var/log/auth.log      # Ubuntu/Debian
cat /var/log/secure        # CentOS/RHEL

# 启动日志
cat /var/log/boot.log

# 邮件日志
cat /var/log/maillog

# 使用tail实时查看最新日志(如Nginx访问日志)
tail -f /var/log/nginx/access.log

3. 使用 dmesg(内核和硬件日志)

查看内核环形缓冲区日志,常用于硬件、驱动问题排查:

dmesg                      # 显示所有内核日志
dmesg | grep -i error      # 过滤错误信息
dmesg -T                   # 显示人类可读的时间戳

4. 其他工具

  • last:查看用户登录历史
    bash last -n 10 # 显示最近10条登录记录
  • who / w:查看当前登录用户
  • logrotate:日志轮转配置(防止日志文件过大)
    配置文件路径:/etc/logrotate.conf

5. 图形化工具(可选)

  • gnome-logs(Ubuntu GNOME桌面环境)
  • KSystemLog(KDE桌面环境)

常见问题排查示例

  • 检查服务崩溃原因
    bash journalctl -u nginx --no-pager | tail -n 50
  • 分析SSH登录失败
    bash grep "Failed password" /var/log/auth.log
  • 查看磁盘错误
    bash dmesg | grep -i "disk error"

注意事项

  1. 需要root权限查看某些日志(如/var/log/secure)。
  2. 日志文件可能被压缩(如.gz),需用zcatzless查看:
    bash zcat /var/log/auth.log.1.gz

根据你的具体需求选择合适的工具和日志文件即可。如果需要更详细的日志分析,可以结合grepawk等命令进行过滤。