193 lines
2.8 KiB
Markdown
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` 都是偏登录审计相关的二进制日志
|
|
- 遇到问题时,要先判断问题类型,再去对应日志位置查证据
|