wiki/运维/Linux/笔记/32.Linux系统日志详解.md
2026-04-08 19:40:00 +08:00

193 lines
2.8 KiB
Markdown

# Linux 系统日志详解
## 1、日志概览
Linux 系统日志主要用于记录:
- 系统启动过程
- 服务运行状态
- 用户登录与认证行为
- 定时任务执行情况
- 内核与硬件信息
日志是排障时最重要的证据之一。
## 2、安装相关日志
常见安装阶段相关文件:
```text
/root/install.log
/root/install.log.syslog
/root/anaconda-ks.cfg
```
说明:
- `/root/install.log`:安装期间的软件包和版本记录
- `/root/install.log.syslog`:安装阶段事件日志
- `/root/anaconda-ks.cfg`:安装过程生成的 Kickstart 配置参考
## 3、常见系统日志文件
### 3.1 定时任务
```text
/var/log/cron
```
记录定时任务相关日志。
### 3.2 打印日志
```text
/var/log/cups/
```
记录打印系统日志。
### 3.3 启动内核日志
```text
/var/log/dmesg
```
记录系统启动时的内核消息,也可通过 `dmesg` 命令直接查看。
### 3.4 登录失败日志
```text
/var/log/btmp
```
这是二进制日志文件,通常用下面命令查看:
```shell
lastb
```
### 3.5 最后登录记录
```text
/var/log/lastlog
```
同样是二进制日志,通常使用:
```shell
lastlog
```
### 3.6 邮件日志
```text
/var/log/maillog
```
记录邮件系统相关日志。
### 3.7 重要系统日志
```text
/var/log/messages
```
很多系统重要信息都会记录到这里,是传统排障时的高频入口。
### 3.8 认证与授权日志
```text
/var/log/secure
```
记录账户、密码、SSH 登录、`su``sudo` 等认证授权相关日志。
### 3.9 登录历史日志
```text
/var/log/wtmp
```
记录用户登录、注销、重启、关机等历史事件。
查看命令:
```shell
last
```
### 3.10 当前登录信息
```text
/var/run/utmp
```
记录当前登录用户信息。
常用查看命令:
```shell
w
who
users
```
## 4、二进制日志的查看方式
以下文件通常不能直接用 `cat``vi` 查看:
- `/var/log/btmp`
- `/var/log/wtmp`
- `/var/log/lastlog`
- `/var/run/utmp`
对应常见命令:
- `lastb`:看失败登录
- `last`:看登录历史
- `lastlog`:看每个用户最后登录时间
- `w` / `who`:看当前登录会话
## 5、常见排障思路
### 5.1 登录失败
重点查看:
```text
/var/log/secure
/var/log/btmp
```
### 5.2 定时任务没执行
重点查看:
```text
/var/log/cron
```
### 5.3 系统启动异常
重点查看:
```text
/var/log/dmesg
/var/log/messages
```
### 5.4 服务报错
优先查看:
- 服务自身日志
- `/var/log/messages`
- 现代系统中再结合 `journalctl`
## 6、小结
- 日志是 Linux 排障的第一手资料
- `/var/log/messages``/var/log/secure``/var/log/cron` 是高频日志文件
- `wtmp``btmp``lastlog``utmp` 都是偏登录审计相关的二进制日志
- 遇到问题时,要先判断问题类型,再去对应日志位置查证据