在 Ubuntu 系统中,查看日志主要有两种方式:一种是使用 专用的查看命令 (最推荐,过滤清晰),另一种是直接查看 日志文件(适合查阅详细原始数据)。
以下是具体操作指南:
文章目录
- 方法一:使用专用命令查看(推荐)
-
- [1. 查看系统启动记录](#1. 查看系统启动记录)
- [2. 实时监控日志(类似 tail -f)](#2. 实时监控日志(类似 tail -f))
- [3. 查看特定服务的日志(非常重要)](#3. 查看特定服务的日志(非常重要))
- [4. 查看内核日志(硬件、驱动、启动报错)](#4. 查看内核日志(硬件、驱动、启动报错))
- 方法二:直接查看日志文件
-
- [1. 系统总日志:`/var/log/syslog`](#1. 系统总日志:
/var/log/syslog) - [2. 安全/认证日志:`/var/log/auth.log` **(重点关注)**](#2. 安全/认证日志:
/var/log/auth.log(重点关注)) - [3. 启动日志:`/var/log/boot.log`](#3. 启动日志:
/var/log/boot.log)
- [1. 系统总日志:`/var/log/syslog`](#1. 系统总日志:
- 方法三:图形化界面(如果你有桌面环境)
方法一:使用专用命令查看(推荐)
Ubuntu 默认使用 systemd,因此最强大的日志工具是 journalctl。
1. 查看系统启动记录
bash
journalctl -b
-b:查看当前启动会话的日志。-b -1:查看上一次启动的日志(常用于排查系统崩溃或重启原因)。
2. 实时监控日志(类似 tail -f)
如果你正在调试程序或防火墙,想看实时发生的错误:
bash
journalctl -f
- 这会让屏幕停留在那里,新产生的日志会实时滚动显示。按
Ctrl + C退出。
3. 查看特定服务的日志(非常重要)
比如你想看刚才提到的防火墙 ufw 或者 SSH 服务的日志:
bash
# 查看 SSH 登录日志(排查谁在尝试登录)
journalctl -u ssh
# 查看防火墙日志
journalctl -u ufw
4. 查看内核日志(硬件、驱动、启动报错)
bash
dmesg | less
- 这通常用于查看硬件是否识别、磁盘报错等底层信息。
方法二:直接查看日志文件
Ubuntu 的日志文件主要集中在 /var/log 目录下。你需要使用 sudo 才能查看大部分日志。
1. 系统总日志:/var/log/syslog
这是最常用的文件,包含了系统和大部分应用程序的常规信息。
bash
# 实时跟踪 syslog
sudo tail -f /var/log/syslog
# 或者查看最后 100 行
sudo tail -n 100 /var/log/syslog
2. 安全/认证日志:/var/log/auth.log (重点关注)
这个文件非常重要! 它记录了所有的登录尝试、sudo 提权操作、SSH 连接。
- 如果你怀疑服务器被攻击,或者想看谁登录了,就看这个。
bash
sudo tail -f /var/log/auth.log
3. 启动日志:/var/log/boot.log
记录系统启动过程中的服务启动情况。
方法三:图形化界面(如果你有桌面环境)
如果你的 Ubuntu 安装了桌面(GNOME/KDE),可以直接使用系统自带的工具:
- 打开 "应用程序" (Show Applications) -> 搜索 "日志" (Logs)。
- 这是一个图形化工具,按时间、类别(系统、应用、安全)分类,非常直观。