在 Ubuntu 中,syslog(系统日志) 主要用于记录系统运行信息、服务日志、错误等。下面按常见场景给你一个完整说明。
Ubuntu 现在通常使用 rsyslog 或 systemd-journald 来管理日志。
常见路径:
/var/log/syslog # 当前系统日志(最常用)
/var/log/messages # 部分系统有(Ubuntu 默认可能没有)
/var/log/auth.log # 认证、SSH 登录
/var/log/kern.log # 内核日志
/var/log/dpkg.log # 软件安装
/var/log/boot.log # 启动日志
cat /var/log/syslog
分页查看(推荐):
less /var/log/syslog
退出:q
tail -f /var/log/syslog
只看最后 50 行:
tail -n 50 /var/log/syslog
Ubuntu 16.04+ 基本都支持:
journalctl
journalctl -f # 实时查看(类似 tail -f)
journalctl -n 100 # 最近 100 条
journalctl --since today
journalctl --since "2025-01-01" --until "2025-01-02"
journalctl -u ssh
journalctl -u nginx
journalctl -u docker
journalctl -k
# 或
dmesg
grep "error" /var/log/syslog
grep -i "failed" /var/log/syslog
journalctl | grep ssh
journalctl -u nginx | grep error
如果提示权限不足:
sudo less /var/log/syslog
sudo journalctl
systemctl status rsyslog
启动 / 重启:
sudo systemctl start rsyslog
sudo systemctl restart rsyslog
| 需求 | 命令 |
|---|---|
| 查看系统日志 | less /var/log/syslog |
| 实时查看 | tail -f /var/log/syslog |
| systemd 日志 | journalctl -f |
| 看某个服务 | journalctl -u 服务名 |
| 搜索错误 | grep error /var/log/syslog |
如果你愿意,可以告诉我:
lsb_release -a)我可以给你更精确的命令 ✅