Linux基础-日志管理

‍‍🏡博客主页:  Passerby_Wang的博客_CSDN博客-系统运维,云计算,Linux基础领域博主

🌐所属专栏:『Linux基础』

🌌上期文章: Linux基础-网络配置

📰如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀! 关注、点赞、收藏、评论。

目录

一、概述

二、内核及系统日志

1、日志文件

2、实例

1)/var/log/messages

2)/var/log/dmesg

3)/var/log/cron

4)/var/log/maillog

5)/var/log/secure

三、用户日志

1、日志文件

2、实例

1)/var/log/lastlog

2)/var/log/wtmp

3)/var/log/btmp

4)/var/run/utmp

四、日志分析

1、查看日志消息

1)通用分析工具

2)专用分析工具

2、用户登录分析

1)users、who、w命令

2)last、lastb 命令

五、日志消息的优先级

1、Linux内核定义的事件紧急程度

2、实例

六、日志管理工具journalctl

1、介绍

2、常见用法

3、实例


一、概述

        日志:用于记录系统操作事件的文件,可以理解为系统和程序的“日记本”,记录系统、程序运行中发生的各种事件。可以通过查看日志,了解及排除故障,也是信息安全控制的依据。

二、内核及系统日志

        内核及系统日志由系统服务rsyslog统一记录,rsyslog是linux系统中用来实现日志功能的服务。默认已经安装,并且自动启用。主要用于采集日志。日志消息采用文本格式,主要记录事件发生的时间、主机、进程、内容等信息。

1、日志文件

日志文件

主要用途

/var/log/messages

记录内核消息、各种服务的公共消息

/var/log/dmesg

记录系统启动过程的各种消息

/var/log/cron

记录与cron计划任务相关的消息

/var/log/maillog

记录邮件收发相关的消息

/var/log/secure

记录与访问限制相关的安全消息

2、实例

1)/var/log/messages

[root@wangwu ~]# tail /var/log/messages

Sep  8 11:00:01 wangwu systemd: Starting Session 86 of user root.

Sep  8 11:01:01 wangwu systemd: Started Session 87 of user root.

... ... ...

2)/var/log/dmesg

[root@wangwu ~]# tailf /var/log/dmesg

[   11.298470] work still pending

[   11.791755] RPC: Registered named UNIX socket transport module.

... ... ...

3)/var/log/cron

[root@wangwu ~]# grep wangwu /var/log/cron

Sep  8 11:12:31 wangwu run-parts(/etc/cron.daily)[23883]: finished mlocate

Sep  8 11:12:31 wangwu anacron[19619]: Job `cron.daily' terminated

... ... ...

4)/var/log/maillog

[root@wangwu ~]# tail /var/log/maillog

Aug 30 11:30:12 wangwu postfix/pickup[1387]: B4E004185177: uid=0 from=<user@localhost>

Aug 30 11:30:14 wangwu postfix/qmgr[1388]: 82D854185177: removed

... ... ...

(END)

5)/var/log/secure

[root@wangwu ~]# tail /var/log/secure

Sep  8 11:12:57 wangwu unix_chkpwd[24051]: password check failed for user (root)

Sep  8 11:12:57 wangwu gdm-password]: pam_unix(gdm-password:auth): authentication failure; logname= uid=0 euid=0 tty=/dev/tty1 ruser= rhost=  user=root

... ... ...

三、用户日志

        用户日志由登录程序负责记录,日志消息采用二进制格式,记录登录用户的时间、来源、执行的命令等信息。

1、日志文件

日志文件

主要用途

/var/log/lastlog

记录最近的用户登录事件

/var/log/wtmp

记录成功的用户登录/注销事件

/var/log/btmp

记录失败的用户登录事件

/var/run/utmp

记录当前登录的每个用户的相关信息

2、实例

1)/var/log/lastlog

[root@wangwu ~]# lastlog -u root

Username         Port     From             Latest

root             pts/0    192.168.6.168    Thu Sep  8 10:57:54 +0800 2022

... ... ...

#/var/log/lastlog是二进制文件,需要用lastlog命令查询

2)/var/log/wtmp

[root@wangwu ~]# last -f /var/log/wtmp

root     pts/0        192.168.6.168    Thu Sep  8 10:57   still logged in

root     pts/0        192.168.6.168    Wed Aug 31 14:51 - 15:11  (00:19)

... ... ...

#/var/log/wtmp是二进制文件,需要用last命令查询,-f 指定文件

3)/var/log/btmp

[root@wangwu ~]# lastb

zhaoliu   :0           :0               Thu Sep  8 11:50 - 11:50  (00:00)

wuba     :0           :0               Thu Sep  8 11:50 - 11:50  (00:00)

... ... ...

#/var/log/btmp是二进制文件,需要用lastb命令查询

4)/var/run/utmp

[root@wangwu ~]# who

root     pts/0        2022-09-08 10:57 (192.168.6.168)

#/var/log/btmp是二进制文件,需要用who命令查询

四、日志分析

1、查看日志消息

1)通用分析工具

tail、tailf、less、grep等文本浏览/检索命令

awk、sed等格式化过滤工具

2)专用分析工具

Webmin系统管理套件

Webalizer、AWStats等日志统计套件

2、用户登录分析

1)users、who、w命令

查看已登录的用户信息,详细度不同

实例

[root@wangwu ~]# users

root
[root@wangwu ~]# who

root     pts/0        2022-09-08 10:57 (192.168.6.168)
[root@wangwu ~]# w

 13:40:23 up 12:30,  2 users,  load average: 0.00, 0.01, 0.05

USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT

root     pts/0    192.168.6.168    10:57    7.00s  0.29s  0.03s w

2)last、lastb 命令

查看最近登录成功/失败的用户信息

实例

[root@wangwu ~]# last -2 #最近两条登入记录

root     pts/1        :0               Thu Sep  8 11:47 - 11:47  (00:00)

root     pts/0        192.168.154.1    Thu Sep  8 10:57   still logged in
[root@wangwu ~]# lastb -2 #最近两条登录失败记录

zhaoliu   :0           :0               Thu Sep  8 11:50 - 11:50  (00:00)

wuba    :0           :0               Thu Sep  8 11:50 - 11:50  (00:00)

五、日志消息的优先级

1、Linux内核定义的事件紧急程度

分为0~7共8种优先级别,其数值越小,表示对应事件越紧急/重要

优先级

状态

说明

0

EMERG(紧急)

会导致主机系统不可用的情况

1

ALERT(警告)

必须马上采取措施解决的问题

2

CRIT(严重)

比较严重的情况

3

ERR(错误)

运行出现错误

4

WARNING(提醒)

可能会影响系统功能的事件

5

NOTICE(注意)

不会影响系统但值得注意

6

INFO(信息)

一般信息

7

DEBUG(调试)

程序或系统调试信息等

2、实例

[root@wangwu ~]# man 2 syslog #用man查看帮助,2代表系统调用

... ... ...

#define KERN_EMERG    "<0>"  /* system is unusable               */

#define KERN_ALERT    "<1>"  /* action must be taken immediately */

#define KERN_CRIT     "<2>"  /* critical conditions              */

#define KERN_ERR      "<3>"  /* error conditions                 */

#define KERN_WARNING  "<4>"  /* warning conditions               */

#define KERN_NOTICE   "<5>"  /* normal but significant condition */

#define KERN_INFO     "<6>"  /* informational                    */

#define KERN_DEBUG    "<7>"  /* debug-level messages             */

... ... ...

六、日志管理工具journalctl

1、介绍

journalctl工具提取由systemd-journal服务搜集的日志,主要包括内核/系统日志、服务日志。日志的配置文件位置:/etc/systemd/journald.conf

2、常见用法

Journalct | grep 关键词

Journalct -r 反序输出(从新到旧)

journalctl -k 查看内核日志(不显示应用日志)

Journalctl -u服务名 (查看指定服务的日志信息)

journalctl -n 消息条数(缺省默认10条)

journalctl -f 日志文件 (实时输出最新条目)

3、实例

[root@wangwu ~]# systemctl start httpd #启动httpd服务

[root@wangwu ~]# journalctl | grep httpd

Sep 08 14:14:30 wangwu yum[90129]: Installed: httpd-tools-2.4.6-97.el7.centos.5.x86_64

... ... ...

Sep 08 14:15:44 wangwu httpd[90899]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::e97a:8402:cb2c:8e3e. Set the 'ServerName' directive globally to suppress this message
[root@wangwu ~]# journalctl -r | grep httpd

Sep 08 14:15:44 wangwu httpd[90899]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::e97a:8402:cb2c:8e3e. Set the 'ServerName' directive globally to suppress this message

... ... ...

Sep 08 14:14:30 wangwu yum[90129]: Installed: httpd-tools-2.4.6-97.el7.centos.5.x86_64
[root@wangwu ~]# journalctl -k

-- Logs begin at Tue 2022-08-30 11:28:46 CST, end at Thu 2022-09-08 14:30:02 CS

Aug 30 11:28:46 wangwu kernel: Initializing cgroup subsys cpuset

... ... ...
[root@wangwu ~]# journalctl -u httpd

-- Logs begin at Tue 2022-08-30 11:28:46 CST, end at Thu 2022-09-08 14:41:37 CS

Sep 08 14:15:28 wangwu systemd[1]: Starting The Apache HTTP Server...

... ... ...
[root@wangwu ~]# journalctl -n 2

-- Logs begin at Tue 2022-08-30 11:28:46 CST, end at Thu 2022-09-08 14:30:02 CS

Sep 08 14:30:02 wangwu CROND[95764]: (root) CMD (/usr/lib64/sa/sa1 1 1)

Sep 08 14:30:02 wangwu systemd[1]: Starting Session 111 of user root.

lines 1-3/3 (END)
[root@wangwu ~]# journalctl -f /usr/lib/systemd/systemd

-- Logs begin at Tue 2022-08-30 11:28:46 CST. --

Sep 08 14:15:28 wangwu systemd[1]: Starting The Apache HTTP Server...

Sep 08 14:15:54 wangwu systemd[1]: Started The Apache HTTP Server.

... ... ...
评论 52
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Passerby_Wang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值