RedHat Linux系统中的日志管理和时间同步

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

日志管理服务

系统日志中记录系统各种重大活动记录,如系统的严重问题日志、系统中立即要更改的信息、程序报错等

systemd-journald.service

journald的系统日志服务是默认记录系统活动的服务程序,这个服务是在rhel7开始出现使用的服务程序主要针对本机
默认日志存放路径: /run/log/journal
可以看出存放在 /run 目录中的日志是会随着系统的关闭被清空

journalctl命令的用法

journald服务使用命令是 “journalctl”
直接使用journalctl命令就是显示从系统启动到现在的系统日志,如下图:
在这里插入图片描述
journalctl的参数

参数说明
-n显示日志最近的几条,如 -n 5
-p显示指定级别的日志
-o设定日志的显示方式
-F PRIORITY查看可控日志级别
-u指定查看服务
-f监控日志
- -since查看日志从哪个时间开始
- -until查看日志到什么时间
- -disk-usage查看日志大小
- -vacuum-size设定日志存放大小,在命令中设置属于临时性,重启系统会失效
- -vacuum-time日志在系统中最长存放时间,在命令中设置属于临时性,重启系统会失效
  • -n 后面加数字来查询日志
    在这里插入图片描述
  • -p
    journald的日志采集内容分为8个级别,分别是
    0 emerg 系统的严重问题日志
    1 alert 系统中立即要更改的信息
    2 crit 严重级别会导致系统软件不能正常工作
    3 err 程序报错
    4 warning 程序警告
    5 notice 重要信息的普通日志
    6 info 普通信息
    7 debug 程序排错信息

实验操作:
在这里插入图片描述
在这里插入图片描述
除了输入对应级别名称,也可以输入对应的数字来查询
在这里插入图片描述

  • -o
    日志的显示方式有很多种,可以用 “man journalctl” 来具体查看
    在这里插入图片描述
    我这里只介绍和演示几种常用的格式
short经典模式显示日志
verbose显示日志的全部字节
export适合传出和备份的二进制格式
jsonjs格式显示输出

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

  • -F PRIORITY
    在这里插入图片描述
    可以看到我们可控的日志级别只有3、4、5、6、7这几个级别
  • -u
    参数-u 后面接具体的服务名称,如sshd、NetworkManager、fierwall等信息,来查看相关服务的日志报告
    在这里插入图片描述
  • f
    日志监控,简单来说就是实时更新采集的日志
    在这里插入图片描述
    在这里插入图片描述
  • –since --until
    这两个参数连起来就是从什么时间到什么时间,是在查询某个时间点后时间段时用到的参数
    在这里插入图片描述
    这里我们根据现在的系统时间查看03:10到03:25这个时间内产生的日志
  • –disk-usage
    显示日志存放的大小,因为这里的日志会随着系统重启被清空,所以我们看到的也只是本次系统使用产生的日志大小
    在这里插入图片描述
  • –vacuum-size
    参数–vacuum-size后面接=1G,意思就是设定日志的存放大小最多占用1Gb的储存
    在这里插入图片描述
  • –vacuum-time
    在参数后面接=1day,这样的时间来进行设定
    在这里插入图片描述
    要说明的是命令设定的 - -vacuum-time、- -vacuum-size 都是临时性的,系统重启后会失效,如果想要永久更改设定,我们需要进入journald服务的配置文件,路径是 /etc/systemd/journald.conf
    在这里插入图片描述
    并且我们可以用 “man 5 journald.conf” 来查看里面的参数用法,例:
    在这里插入图片描述
  • 除了上述参数应用,还有一种方式来精确查看方式
    例如 firewalld 火墙服务眼前的进程在被重启后就会成为一个新的进程,PID也是会改变
    在这里插入图片描述
    在这里插入图片描述
    如果我们就是要看重启前的火墙产生的日志,首先我们用-o verbose来查看信息
    在这里插入图片描述
    命令:journalctl -o verbose
    /11364:搜索重启前进程的PID
    可以看到搜索出的信息,_PID=11364(进程号)_SYSTEMD_UNIT=firewalld.service(程序名)
    然后直接用 journalctl 命令加上这两个信息
    在这里插入图片描述
    查询出的信息就是属于PID:11364 的日志
用journald服务永久存放日志

因为journald服务日志存放的路径 /run/log/journal 里,上面也说过重启系统会清空日志,所以我们如果需要永久保存这些日志,需要建立新的采集路径

步骤说明
mkdir /var/log/journal创建日志采集的目录
chgrp systemd-journal /var/log/journal修改目录的拥有组为systemd-journal
chmod 2775 /var/log/journal修改目录的权限为rwxrwxr-x,并开启group位的超级权限s表示该目录下创建的文件拥有组都属于上一步设定的systemd-journal组
systemctl restart systemd-journald.service重启服务

在这里插入图片描述
设置完后,我们再去看 /run/log 里面已经没有journal 这个目录了,然后我们重启系统用 “journalctl” 看之前的日志是否会保存下来
在这里插入图片描述


rsyslog.service

rsyslog是具有一定定制性的日志采集服务
rsyslog日志存放路径:

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

以上文件都是系统自动建立的文件
rsyslog的配置文件:/etc/rsyslog.conf

自定义日志采集路径

自定义日志采集,我们需要设置rsyslog的配置文件
编辑:vim /etc/rsyslog.conf
在这里插入图片描述
看到配置文件下面有RULES,规则设置,
以49行的这个规则为例

authpriv日志的类型
*日志的级别, *表示所有的级别
/var/log/secure指定日志的存放路径

实验测试:
我们写一条采集日志的指定信息和路径
在这里插入图片描述
指定规则将产生的所有日志放进/var/log/test文件下,而且可以使用 “;”“ * . * ” 后面再加一条规则,例如 “ * .* ;authpriv.none ” ,就是采集所有类型的所有级别,但是不采集authpiv。

日志类型说明
auth#用户认证
authpriv#服务认证
cron#时间任务
kern#内核类型
mail#邮件
news#系统更新信息
user#用户
日志级别说明
emerg系统的严重问题日志
alert系统中立即要更改的信息
crit严重级别会导致系统软件不能正常工作
err程序报错
warning程序警告
notice重要信息的普通日志
info普通信息
debug程序排错信息
none不采集任何信息
更改日志采集格式

正常的日志格式我们看到的日志格式是这样的
在这里插入图片描述
这个日志格式我们是可以在配置文件里进行设置
在这里插入图片描述
这里是系统的默认采集格式,我们可以在这里进行自定义格式如下
在这里插入图片描述

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

格式设施完后,在日志采集路径后面写入格式名称,使之使用我们设置的格式,如下图所示
在这里插入图片描述
在这里插入图片描述
然后重启服务,再查看test文件,就可以看到我们设置的格式

日志的远程同步

在rsyslog.service服务中,提供了远程日志同步服务,帮助我们去采集其他服务端主机的日志方便查看
实验操作,我们还是准备两个主机
rhel7-work :IPADDR=192.168.0.10 作为日志发送端
rhel8-work :IPADDR=192.168.0.20 作为日志接受端

发送方式分为UDP,TCP,此处我们为了传输效率所以选择UDP传输方式
首先在rhel8-work中设定接受所有人日志,并且关闭火墙防止被拦截

  • systemctl stop firewalld 关闭火墙
  • vim /etc/rsyslog.conf 编辑配置文件
    module(load=“imudp”) # needs to be done just once ##打开日志接受插件
    input(type=“imudp” port=“514”) ##指定插件使用接口
    在这里插入图片描述
    配置完后,重启服务并去查看端口是否开启
    在这里插入图片描述
  • 然后在rnel7-work里设置配置文件发送日志到rhel8-work中
    设置方法我们可以用 “man rsyslog.conf” 查看
    在这里插入图片描述
    格式根据示例来写,@表示UDP传输,@@表示TCP传输,@符之后加的是接收日志的主机IP
    vim /etc/rsyslog.conf
    在这里插入图片描述
  • 写完后,重启服务,我们清空两边的日志文件再测试看效果
    使用命令: /var/log/messages 清空内容
    logger test 加载测试信息
    在这里插入图片描述
    在这里插入图片描述

我们就看到了在rhel7中的测试日志被传输到了rhel8中


系统时间管理

命令:timedatectl 查看系统时间信息
在这里插入图片描述
命令参数

参数说明
set-time##设定系统时间
list-timezones##显示系统的所有时区
set-timezone##设定系统时区
set-local-rtc后面加 0/1 ##设定系统时间计算方式,0表示使用utc时间计算方式,1表示使用local时间

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

时间同步服务

时间同步服务是为了我们在采集其他主机传输的日志时和本机时间保持一致,防止时间差别太大导致无法正确查看日志
服务名称: chronyd.service
配置文件: /etc/chrony.conf
实验操作,还是之前的两台主机
rhel7-work :IPADDR=192.168.0.10 同步rhel8的时间
rhel8-work :IPADDR=192.168.0.20 作为时间源

  • 首先在rhel8-work中,
    配置vim /etc/chrony.conf
    allow 192.168.0.0/24 ##允许192.168.0.0/24网段主机同步时间
    local stratum 10 ##开启时间同步服务器功能并设定级别为10
    在这里插入图片描述
  • 配置完后重启服务,依然关闭火墙,完成后在rhel7-work中配置
    因为这个服务默认时关闭的,所以我们去开启chronyd.service服务,并设置开机自动开启
    在这里插入图片描述
    并且配置vim /etc/chrony.conf,然后重启服务
    在这里插入图片描述

完成上面的配置后在rhel7-work中可以看到时间已经同步了
而且可以用命令 “chronyc sources -v” 查看
在这里插入图片描述
可以看到查看到的信息里显示了^* 192.168.0.20,
根据上面的提示 “ ^ ” 表示服务, “ * ” 已经同步。
这样就完成了服务端可主机的时间同步

但在rhel8中 /etc/chrony.conf 这个配置文件对于接收时间同步方的参数显示是有一些区别的
在这里插入图片描述
对于这个格式我们更改配置的的格式是如下
在这里插入图片描述
这是rhel7和rhel8中的一些配置区别,其他的设置还是一样的


以上讲述就是对Linux的日志管理及日志同步的知识解析,并且包括了系统时间的更改和同步管理

Linux命令(115)之journalctl linux命令之journalctl介绍 阅读详情

相关推荐

Linux系统中的日志管理+时间同步服务

Linux系统中的日志管理 实验环境: rhel7_node1: 11 rhel8_node1: 10 7链接8 ###############1.journald################# 服务名称systemd-journald.serice 日志产生由程序本身产生, 用来采集日志 journalctl 进程关不掉 默认日志存放路径/run/log,重启清空,只看当前主机存放状态...

Aimee_c的博客 857

Linux journalctl命令详解

Linux journalctl命令详解

weixin_43230594的博客 3981

Linux基础篇之企业级日志管理及优化方式

实验环境: rhel7IP:192.168.0.40 rhel8IP:192.168.0.41 什么是日志文件呢? 简单来说,就是记录系统活动信息的几个文件,例如:何时何地何人,做了什么操作。也就是记录系统在什么时候由哪个进程做了什么样的行为时,发生了何种的事件等。对系统的日志文件的分析备份是一个系统管理员必须掌握的。 journald 服务名称:systemd-journald.servi...

qq_42564122的博客 792

journal详解

一、简介 作为最具吸引力的优势,systemd拥有强大的处理与系统日志记录功能。 在使用其它工具时,日志往往被分散在整套系统当中,由不同的守护进程及进程负责处理,这意味着我们很难跨越多种应用程序对其内容进行解读。 由于大部分引导进程都是由systemd进程处理的,因此我们有理由以标准化方式实现日志的收集与访问。 其中jornald守护进程会收集全部来源的数据并将其以二进制格式加以存储,从而轻松实现动态操作。 这种作法能够实现多种收益。通过单一工具与数据交互,管理员能够以动态方式显示日志数据。 另外,我们也

wq1205750492的博客 4417

Linuxredhat主客机系统日志同步与时间同步教程

在本文中主要介绍Linux系统中如何实现服务器客户端的时间同步日志同步,以及如何更改相应的配置文件,希望对你有所帮助。

random_w的博客 2483

小白带你一起学LinuxLinux日志管理

系统状态监控故障排查定位安全审计分析性能优化依据合规性要求满足。

KellenKellenHao的博客 879

LINUXredhat 7.0)管理系统日志

系统日志默认分类 日志同步

a18829898663的博客 2403

Linux系统中企业级日志管理及优化

实验环境 rhel7_node1:192.168.1.108 rhel8_node1:192.168.1.109 一. journald 1. jorunald命令的用法 a) 服务名称 systemd-journald.service journaldctl b) 默认日志存放路径 /run/log c) 命令用法 2.用journal服务永久存放日志 系统中默认日志...

FYRXP的博客 324

LINUX(redhat)学习之系统日志-systemd-journal

redhat 7 新开的系统日志(一次性的日志,保存在内存中比较详细)------------------------命令-------------journal的日志存放在   /run/log/ 下面的journalctl:(直接执行列出所有日志)-n:指定显示多少行(显示最后多少行)-p:指定日志级别(如只查错误日志:journalctl -p error)-f:动态显示日志-o verbo...

qq_36265384的博客 4315

linux 日志管理

目录前言journald命令rsyslog命令timedatectl命令时间同步 前言 通过日志我们能够迅速排错、快速定位。各个程序都可以生成日志。在rehl7之前只有一个服务rsyslog ,在rehl7及rehl8中有两个服务 rsyslog journald 能够采集日志,这两个服务的采集方式是不同的。 journald命令 服务名称: systemd-journald.service(注...

L*YUE的博客 881

Linuxredhat系统日志的管理 (计算机的档案)

######系统日志管理########1.rsyslog   : 此服务时用来采集系统日志的,它不产生日志,只是起到采集作用 2.rsyslog的管理 /var/log/message 服务信息日志 /var/log/secure 系统登陆日志 /var/log/corn 定时任务日志 /var/log/maillog 邮件日志 /var/log/b...

qq_42732013的博客 2750

Linux日志管理

目录在这里嗷~,如有问题请私信我进行修改~

weixin_41429180的博客 97

RHSCA学习二(ssh配置保护,使用密钥登录ssh)redhat linux日志管理,同步系统时钟NTP

RHCSA 认证学习笔记二 配置保护SSH TCP 22 端口 加密传输数据,用来替代telnet tcp 23 端口 SSH协议提供两种用户认证方式 ➢ 基于口令的安全认证 • 与telnet类似,提供正确的用户口令后可以登录远程服务器 ➢ 基于密钥的安全认证 • 使用公钥私钥对的方式对用户进行认证 OpenSSH的服务程序名称是sshd ⚫ sshd服务程序缺省状态为自动启动 ⚫ sshd服务的启动与停止 systemctl start sshd 启动服务 stop 停止服

阿杜的博客 630

Linux系统日志管理redhat

<br />一、Linux系统日志作用<br />日志对任何一个OS、应用软件、服务进程而言都是必不可少的模块。日志<br />文件对于系统网络安全起到中大作用,同时具有审计、跟踪、排错功能。<br />可以通过日志文件监测系统与网络安全隐患,以及监测黑客入侵攻击路线。<br />二、日志分类<br />1. 连接时间的日志<br />连接时间日志一般由/var/log/wtmp/var/run/utmp这两个文件记录,不过这<br />两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下

jlds123的专栏 2085

LINUX REDHAT第十单元文档

1.系统日志默认分类#### /var/log/messages##系统服务及日志,包括服务的信息,报错等等 /var/log/secure##系统认证信息日志 /var/log/maillog##系统邮件服务信息 /var/log/cron##系统定时任务信息 /var/log/boot.log##系统启动信息 2.日志...

weixin_34355715的博客 138

Linux学习初识redhat7(六)

文件上传 文件上传,把本机文件上传到服务器,把服务器上的文件拷贝到本机(文件上传速度满于文件同步速度) scp 原文件目录 目标用户@主机地址:目标地址 文件同步 同步指令rsync: rsync -参数 源文件(不加/拷贝目录以及里面的文件) 目标用户@目标ip:目标地址                                           o所有

m0_37387597的博客 350

linux系统的日志介绍

<br />成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所以用户不需要特殊的工具就可以搜索阅读它们。还可以编写脚本,来扫描这些日志,并基于它们的内容去自动执行某些功能。 Linux 日志存储在 /var/log 目录中。这里有几个由系统维护的日志文件,但其他服务程序也可能会把它们的日志放在这里。大多数日志只有root账户才可以读,不过修改文件的访问权限 就可以让其他人可读。<br /><

xiayefanxing的专栏 755

LINUX(redhat)学习之分析存储日志

--------------------redhat 7的日志常规日志  syslog(所有系统)实现日志功能的应用程序    /usr/sbin/rsyslogd日志存放在 /var/log/  (var是存放经常变化的文件,大多是日志是存放在messages里)例外 :maillog(邮件日志) secure(安全日志 列如sudo) sudit(安全相关的日志)            cro...

qq_36265384的博客 722
上一篇: RedHat Linux中主机间文件传输及打包压缩服务
下一篇: RedHat Linux 8中网络配置
Howei__
博客等级 码龄7年 42粉丝 95原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Howei__

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

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

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

打赏作者

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

抵扣说明:

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

余额充值