linux入门之系统日志的高级管理(journal服务、chronyd服务和timedatectl的使用)

软件的不断升级,提供的服务和功能也越来越强大,日志服务是Linux系统的重要服务,rsyslog服务是日志服务的一种,但它存在诸多的问题。因此,journal服务开始不断替代rsyslog服务,它提供了将日志存放在硬盘中等诸多功能。下面让我们看一下journal服务。

一、rsyslog中日志格式的设定

日志的接受方和发送方的日志同步可以看一下上一篇系统日志管理

vim /etc/rsyslog.conf          ##更改配置文件
systemctl restart rsyslog    ##重启服务
  1. 更改日志配置文件
    在这里插入图片描述
    设定日志的格式,其中日志格式的名称可以任意取,同时设置接收的所有日志信息的格式为此格式
$temlate 名称, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
                           显示日志时间        日志来源的ip        日志记录目标  日志信息 换行
$ ActionFileDefautlTemplate 名称
 *.*             /var/log/文件名称;名称

在这里插入图片描述
从下图我们可以看出接收方的日志格式,已经变成我们设定的格式,需要注意的是,接收方查看的日志文件为/var/log/westos,因为在之前我们已经设定好所有发送方的日志信息在/var/log/westos文件中接受。

> /var/log/messages          ##清空日志信息
logger  test                 ##产生日志信息
cat /var/log/messages        ##查看日志信息

在这里插入图片描述
查看系统接受日志信息的文件,格式已经修改成我们设置的样式
在这里插入图片描述

二、时间同步服务
服务名称chronyd

  1. 服务端
vim /etc/chrony.conf          ##更改配置文件
allow ip地址                  ##允许那台主机同步时间
local stratum 10              ##本机不同步任何主机的时间,只作为时间源
systemctl restart chronyd     ##重启服务
systemctl stop firewalld      ##关闭防火墙,避免数据包被阻挡

在这里插入图片描述
在这里插入图片描述
2. 客户端

vim /etc/chrony.conf        ##更改配置文件
server ip地址 iburst        ##本机立即同步服务端的时间
systemctl restart chronyd   ##重启服务

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

chronyc sources -v       ##查看同步是否成功

在这里插入图片描述
3. 测试
使用date命令将服务端的时间修改,让客户端的时间同步服务端
在这里插入图片描述
注意:如果修改的时间未同步,可以查看服务端的防火墙是否关闭,防火墙可以将外部的数据包拦截,会影响实验。重启一下chronyd服务,再次使用date命令查看时间,时间已同步。date命令修改时间不会同步到硬件上,要将硬件上的时间也修改可以使用timedatectl命令。
在这里插入图片描述

三、timedatectl命令

timedatectl status       ##显示当前时间信息,status可以省略
timedatectl set-time     ##设定当前时间

在这里插入图片描述

timedatectl set-timezone       ##设定当前时区

在这里插入图片描述

timedatectl list-timezones      ##查看支持的所有时区

在这里插入图片描述

timedatectl set-local-rtc 1|0      ##设定是否使用utc时间

在这里插入图片描述
四、journal日志服务

  1. journalctl命令管理日志
journalctl       ##日志查看工具

在这里插入图片描述

journalctl -n 3        ##查看最近3条日志

在这里插入图片描述

journalctl -p err      ##查看错误的日志

在这里插入图片描述

journalctl -o verbose      ##查看日志详细参数

在这里插入图片描述

journalctl --since           ##查看从什么时间开始的日志
journalctl --until           ##查看到什么时间为止的日志
journalctl --since 时间 --until 时间      ##查看从什么时间开始到什么时间结束的日志

在这里插入图片描述

journalctl _PID=86 _COMM=systemd-journal     ##查看具体为某一信息的日志

在这里插入图片描述

  1. 将日志信息保存到硬盘中
    默认systemd-journald是不能将系统日志保存到硬盘的,那么关机后再次开机,之前的日志信息将会被清除,我们只能看到本次开机后产生的日志。那么,我们该怎样解决这样的问题呢?
    (1)创建一个存放日志信息的目录,并且将所有的日志信息都归属到systemd-journal中
    在这里插入图片描述
    (2)开启systemd-journald服务,通过ls /var/log/journal/我们可以看到,日志信息存放的硬盘id
    在这里插入图片描述
    (3)查看最近3条的日志信息,记住这个时间,通过reboot命令重启虚拟机
    在这里插入图片描述
    (4)开机后,journalctl查看所有日志信息,我们可以看到关机之前的日志信息,则证明我们已经将日志信息存放到硬盘中
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43830639/article/details/89342165