«

Linux 查看系统日志

时间:2026-10-9 07:16     作者:emer     分类: 无


Linux 查看系统日志

排查问题先看日志,这些命令要记住。

1. 系统日志位置

/var/log/messages    # 系统主日志
/var/log/syslog      # Debian/Ubuntu 系统日志
/var/log/boot.log    # 启动日志
/var/log/cron        # 定时任务日志
/var/log/secure      # 安全日志(登录、sudo等)
/var/log/nginx/      # Nginx 日志
/var/log/httpd/      # Apache 日志
/var/log/mysql/      # MySQL 日志

2. 基本查看命令

cat:查看全部

cat /var/log/messages

tail:看末尾几行(最常用)

# 看最后10行
tail /var/log/messages

# 看最后20行
tail -n 20 /var/log/messages

# 实时跟踪日志(最常用)
tail -f /var/log/messages

head:看开头几行

head -n 10 /var/log/messages

3. 搜索日志

grep:搜索关键词

# 搜索错误信息
grep "error" /var/log/messages

# 不区分大小写
grep -i "error" /var/log/messages

# 显示行号
grep -n "error" /var/log/messages

# 反向匹配(不包含error)
grep -v "debug" /var/log/messages

结合管道

# 实时日志里搜索错误
tail -f /var/log/messages | grep "error"

# 搜索最近的nginx错误
tail -n 1000 /var/log/nginx/error.log | grep "500"

4. journalctl 查看 systemd 日志

# 查看全部日志
journalctl

# 看最后100行
journalctl -n 100

# 实时跟踪
journalctl -f

# 按服务查看
journalctl -u nginx

# 按时间查看
journalctl --since "1 hour ago"
journalctl --since "2024-01-01" --until "2024-01-02"

5. 常用排查场景

1)服务器登录失败

grep "Failed password" /var/log/secure

2)服务起不来

systemctl status nginx
journalctl -u nginx -n 50

3)磁盘满了

df -h
du -sh /var/log/*

4)定时任务没执行

cat /var/log/cron

6. 日志清理

手动删除大日志

# 查看日志大小
du -sh /var/log/*

# 清空日志(不删除文件)
> /var/log/messages

# 删除旧日志
rm /var/log/messages.1

logrotate 自动切割

总结

Linux 查看日志要点:

运维排查,看日志是第一步。

标签: Linux 运维 日志 命令 排查