【linux基础10】日志管理(图文详细讲解如何管理和同步日志)

一、实验环境

1、需要提前关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
本节实验将以两台主机为例子

ck1 172.25.42.1
ck2 172.25.42.2

二、日志journald

一、journald

journald服务名称为systemd-journald.service,我们可以通过journalctl命令对系统日志进行管理。

服务名称:systemd-journald.service
命令:journalctl
默认日志存放路径: /run/log

二、 journalctl命令的用法

一、基本命令

journalctl		  ##显示系统日志
			-n 3  						  ##显示日志的最新3条
			--since "2020-05-01 11:00:00" ##显示11:00后的日志
			--until "2020-05-01 11:05:00" ##显示11:05前的日志
			-F PRIORITY 				  ##查看可控日志级别
			-u sshd 					  ##指定查看服务
			--disk-usage 				  ##查看日志大小
			--vacuum-size=1G 			  ##设定日志存放大小
			--vacuum-time=1W 			  ##日志在系统中最长存放时间
			-f 							  ##监控日志
			_PID=                         ##查看指定进程号日志

二、测试

日志的最新3条:
1、查看最新的三条

 journalctl -n 3

在这里插入图片描述
2、显示11:00后的日志:

journalctl --since "2020-04-21 11:00:00"

在这里插入图片描述

3、显示日志11:00到11:05:

 journalctl --since "2020-04-21 11:00:00" --until "2020-05-01 11:05:00"

内容为空
在这里插入图片描述

三、journalctlde的高级用法

1、设定显示方式

journalctl	-o    ##设定日志的显示方式
 				  short 			   ##经典模式显示日志
				  verbose 			   ##显示日志的全部字节
                  export               ##适合传出和备份的二进制格式
                  json                 ##字典格式显示输出

列如
在这里插入图片描述
2、设定显示的级别

journalctl -p    显示制定级别的日志
                 0 #emerg 系统的严重问题日志
                 1 #alert 系统中立即要更改的信息
                 2 #crit 严重级别会导致系统软件不能正常工作
                 3 #err 程序报错
                 4 #warning 程序警告
                 5 #notice 重要信息的普通日志
                 6 #info 普通信息
                 7 #debug 程序拍错信息
           -F  PRIORITY ##查看可控日志级别
           -u  sshd ##指定查看服务
           --disk-usage ##查看日志大小
           --vacuum-size=1G  ##设定日志存放大小
           --vacuum-time=1W  ##日志在系统中最长存放时间
           -f ##监控日志
           journalctl  _PID=10924 _SYSTEMD_UNIT=sshd.service

例如查看重要信息的普通日志

journalctl -p 5

在这里插入图片描述

四、设置journald服务永久存放日志

系统中默认将日志存放在 /run/log/journal中,这种默认方式在系统重启后日志会被清理,要永久保存日志需要完成以下操作

1、查看节点号,便于与最后的实验效果对比
2、在硬盘目录下新建journal目录储存文件
3、将原本的日志采集的组赋予给新目录journal
4、更改权限,使得目录下新产生的文件的组都归属于journal的组
5、删除journal里面的多余文件
6、重启原本的日志服务

1、查看节点号,便于与最后的实验效果对比

在这里插入图片描述
在这里插入图片描述

重启后发现节点号变了,只记录了重启后的日志,说明日志不会被保留下来。
在这里插入图片描述
在这里插入图片描述
2、进行如下操作
在这里插入图片描述
3、查看此时的效果
在这里插入图片描述
在这里插入图片描述
4、查看重启后的的效果,发现时间和节点号都没有变化。
在这里插入图片描述
在这里插入图片描述

三、rsyslog

rsyslog服务名称为 rsyslog.service,系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对用户了解系统的运行状态是非常有用的,所以需要把它们保存到对应的日志文件中,以便后续进行分析和监控系统或软件的状态。Linux 系统拥有非常灵活和强大的日志功能,几乎可以保存所有的操作记录,并可以从中检索出我们需要的信息,完成这个工作的守护进程就是 rsyslog。

配置文件为/etc/rsyslog.conf,作用是定义了将系统日志分门别类采集到指定位置

一、日志存放地址

一、日志存放地址

/var/log/messages        #系统服务日志,常规信息,服务报错
/var/log/secure          #系统认证信息日志
/var/log/maillog         #系统邮件日志信息
/var/log/cron            #系统定时任务信息
/var/log/boot.log        #系统启动日志信息

配置文件:/etc/rsyslog.conf

二、修改存放日志地址

我们可以通过编辑rsyslog.service服务的配置文件 /etc/rsyslog.conf来自定义日志采集路径,即在配置文件中添加下列语句:

vim /etc/rsyslog.conf


日志类型.日志级别 日志存放路径
*.*            		/var/log/westos 
			   		##把系统中所有级别的日志存放westos中
*.*;authpriv.none 	/var/log/westos 
					##把系统中所有级别的日志存放到westos中
					##但是authpriv不存放到westos中
///					

二、日志类型

auth             #用户认证
authpriv         #服务认证
cron             #时间任务
kern             #内核类型
mail             #邮件
news             #系统更新信息
user             #用户

三、日志级别

debug              #程序排错信息
info               #程序常规运行信息
notice             #重要信息的普通日志
waring             #程序警告
err                #程序报错
crit               #严重级别会导致系统软件不能正常工作
alert              #系统中立即要更改的信息
emerg              #系统的严重

四、rsyslog同步日志

一、利用rsylog命令,将ck1的日志同步传输到ck2 (采取udp传输)

首先在接收端ck2设置接收的udp格式,然后重启配置好的rsylog文件,关闭火墙,清空日志内容便于查看。具体如下
1、做好ck2接受端的准备

[root@ck2 ~] vim /etc/rsyslog.conf                  图1、设置配置文件
[root@ck2 ~] systemctl restart rsyslog.service 
[root@ck2 ~] systemctl disable --now firewalld
[root@ck2 ~] netstat -antlupe|grep rsyslog          图2、查看UDP端口是否开启
[root@ck2 ~] > /var/log/messages                    清空日志方便查看信息

图1
在这里插入图片描述
图2
在这里插入图片描述

2、在发送方ck1设置传输文件类型以及发送地址,清空日志方便查看

vim /etc/rsylog.conf
systemctl restart rsyslog.service
> /var/log/messages
> logger hello

在这里插入图片描述

3、在发送端输入hello字符,在接收端查看效果
发送端
在这里插入图片描述
接收端
在这里插入图片描述

二:设定特定接受内容

将发送端的ip,日志生成时间,日志生成服务,日志内容同步到接送端。
日志采集格式

#WESTOS_FORMAT                格式名称
#%FROMHOST-IP%                日志来源主机IP
#%timegenerated%              日志生成时间
#%syslogtag%                  日志生成服务
#%msg%:                      日志内容
#\n:                         换行

1、在接受端做如下设置

 vim /etc/rsyslog.conf
 systemctl restart rsylog.conf`

在这里插入图片描述
2、发送端

logger tset message

3、接收端查看效果
在这里插入图片描述

3.timedatectl

设定系统时间
timedatectl set-time "2020-02-13 10:41:55"

显示系统的所有时区
timedatectl list-timezones

设定系统时区
timedatectl set-timezone "Asia/Shanghai"

设定系统时间计算方式
timedatectl set-local-rtc 0|1
##0表示使用utc时间计算方式

1、查看当前时间、设置时间
注意:使用timedatectl命令更改时间设置时,需要关闭chronyd.service,否则无法设置
在这里插入图片描述
这里是因为为没有安装这个服务

4.时间同步服务

#服务名称: chronyd.service
#配置文件: /etc/chrony.conf

用ck1作为时间源,让ck2同步ck1时间

1、ck1时间同步端口
在ck1时间提供端口中

vim /etc/chrony.conf

///
allow 172.25.254.0/0                  ##允许所有网段主机同步时间
local stratum 10                      ##开启时间同步服务器功能并设定级别为10
 ///
 
systemctl restart chronyd.service
systemctl stop firewalld 

在这里插入图片描述

2、在ck2主机时间同步接受端

vim /etc/chrony.conf

/
pool 172.25.254.100 iburst


systemctl restart chronyd
chronyc sources -v                  查看同步的效果

在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值