Linux中系统日志的管理

##实验环境:
主机一:192.168.43.60
主机二:192.168.43.61
关闭火墙:

systemctl  stop  firewalld

设置vim:

vim etc/vimrc
set nu

一、journald 程序采集日志

服务名称:systemd-journald.service
命令: journalctl 获取日志
默认日志存放路径: /run/log   每次重启后会清空

实验一:journalctl命令的用法

journalctl
 -n  3     ##日志的最新3条
 --since  “2020-02-13 17:00”    ##显示17:00后的日志
 --until  “2020-02-13 17:00”     ##显示日志到17:00
 在这里插入图片描述
 在这里插入图片描述
 在这里插入图片描述
 -o        ##设定日志的显示方式
   short    经典模式显示日志
   verbose  显示日志的全部字节
   export   适合传出和备份的二进制格式
    json    js格式显示输出
    在这里插入图片描述
 -p        ##显示制定级别的日志
  0  emerg   系统的严重问题日志
  1  alert    系统中立即要更改的信息
  2  crit     严重级别会导致系统软件不能正常工作
  3  err     程序报错
  4  warning   程序警告
  5  notice    重要信息的普通日志
  6 info     普通信息
  在这里插入图片描述
 -F PRIORITY    查看可控日志级别
 在这里插入图片描述
 在这里插入图片描述
   ##可用 -p 2 查看
 -u sshd      指定查看服务
 --disk-usage    查看日志大小

[root@rhel7_1 ~] journalctl --disk-usage 
Archived and active journals take up 6.0M on disk.

–vacuum-size=1G    设定日志存放大小,临时的,可在/etc/systemd/journald.conf 下永久更改
–vacumm-time=1W    日志在系统中最长存放时间,临时的,重启后无
 -f           监控日志
journalctl  _PID=10924  _SYSTEMD_UNIT=sshd.service  条件查找,条件在-o verbose 中寻找

实验二:用journald服务永久存放日志

系统中默认日志在:/run/log/journal中
在这里插入图片描述
在这里插入图片描述
可以看出完成上述操重启服务作后,/run/log/ 下的文件被删除,在 /var/log/journal/ 下自动生成了和以前一样的一个文件,则日志存放路径被指定到:/var/log/journal,此时重启电脑之前的日志文件不会丢失。

[root@rhel7_1 journal]# systemctl status systemd-journald.service
● systemd-journald.service - Journal Service
   Loaded: loaded (/usr/lib/systemd/system/systemd-journald.service; static; vendor preset: disabled)
   Active: active (running) since Thu 2020-02-13 ==17:45:41== CST; 10min ago
     Docs: man:systemd-journald.service(8)

这是此时服务开启的时间,这时我们重启电脑后
在这里插入图片描述
可以看见之前的日志仍然存在,所以这次永久存放日志实验成功,我们可以

journalctl --vacuum-size=1G      来设定最大滚动日志为1G

操作总结:
1.在操作以上步骤之前查看日志
2.重启系统
3.再次查看日志
4.可以看到日志是不会被保存下来的只能看到重启之后的日志
5.完成以上操作后再次重启系统可以看到日志是被保存下来的

二、rsyslog 程序采集日志

服务名称:rsyslog.service
日志存放:

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

rsyslog的管理都依赖于配置文件:/etc/rsyslog.conf

实验一:自定义日志采集路径

日志类型 . 日志级别  日志存放路径
   *.*     /var/log/westos    ##把系统中所有级别的日志存放到westos中
*. * ;  authpriv.none  /var/log/westos     ##把系统中所有级别的日志存放到westos中
                     但是authpriv不存放到westos中
在这里插入图片描述
清空 /var/log/message 文件的内容,然后 vim  /etc/rsyslog.conf

 54 *.info;mail.none;authpriv.none;cron.none                /var/log/messages
 55 *.*                                                     /var/log/westos  #加入这一行

在这里插入图片描述
重启服务后发现原来不存在的文件出现了,内容也出现了:
在这里插入图片描述
设置只有服务认证可以记录到  /var/log/westos:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
看到 westos文件中只有服务认证日志了。重启网络的话则不会出现网络的日志,可以自行检测

systemctl restart network

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

日志级别

debug
info
notice
waring
err
crit
alert
emerg
none   # *.*;auth.none 表示除过用户认证

实验二:如何更改日志采集格式

默认日志格式;
在这里插入图片描述

1定义日志采集格式
在这里插入图片描述
WESTOS: 格式名称
%FROMHOST-IP%: 日志来源主机IP
%timegenerated%: 日志生成时间
%syslogtag%: 日志生成服务名称
%msg%: 日志内容
\n: 换行

2设定日志采集格式应用
在这里插入图片描述
重启日志服务后生效。
在这里插入图片描述
重启服务后,看出日志格式已经显示为想要的格式

实验三:日志的远程同步

rhel7_node1:172.25.254.11  存放日志作为日志接受端,所有人日志都存放到此台主机
rhel8_node1:172.25.254.10  发送日志到rhel7_node1主机中

1.在rhel7中设定接受所有人的日志
vim /etc/rsyslog.conf

两种同步方式:udp速率较快,所以选择 udp 方式
在这里插入图片描述
在这里插入图片描述
15 $ModLoad imudp      ##打开日志接受插件
16 $UDPServerRun 514    ##指定插件使用接口

查询端口:514端口已经打开
在这里插入图片描述

2.rhel8中设定发送日志到rhel7中
vim /etc/rsyslog.conf
在这里插入图片描述
*.*  @172.25.254.11

@ 表示使用udp传输日志
@@ 表示使用tcp传输日志
@172.25.254.11 把本机日子用udp的传输方式发送到172.25.254.11主机
systemctl restart rsyslog 重启服务

测试:
在rhel7和8中 > /var/log/messages 清空内容方便比较
在rhel8中
logger westos test message    logger是测试日志的工具,产生日志

在这里插入图片描述
在这里插入图片描述
可以看出rhel7中已经出现了rhel8中的日志

三、timedatectl 更改系统时间

在这里插入图片描述
locale time=RTC time + 时区差=13+8=21

**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表示普通时间计算方式

vim  /etc/adjtime

在这里插入图片描述

timedatectl  set-local-rtc  1 
vim  /etc/adjtime

在这里插入图片描述
在这里插入图片描述
可见硬件时间已经改为本地时间,时间计算方式也已经改变。

四、时间同步服务

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

在rhel7作为时间源rhel8同步rhel7时间
在rhel7中

vim /etc/chrony.conf

在这里插入图片描述
在这里插入图片描述
26 allow 172.25.254.0/24      ##允许172.25.254.0网段主机同步时间
29 local stratum 10         ##开启时间同步服务器功能并设定级别为10
systemctl restart chronyd.service
在rhel8中

vim /etc/chrony.conf  编写文件

在这里插入图片描述

systemctl restart chronyd   重启服务

查看:
在rhel8中查看时间:
现实已经变成rhel7中时间
使用chronyc 命令查看时间效果:
在这里插入图片描述
则已经成功同步rhel7的时间

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值