linux系统下的日志管理

一、journal命令
#查看日志(内存中的日志,重启之后就没有了)
在这里插入图片描述

journalctl -n 数字 #日志的最新几条
在这里插入图片描述
journalctl --since “2021-1-20 10:00:00”#显示上午十点后的日志
journalctl --until “2021-1-20 10:01:00”#显示上午10点01分前的日志
在这里插入图片描述
journalctl -F PRIORITY #查看可控日志级别
在这里插入图片描述
journalctl -u sshd #指定查看服务
在这里插入图片描述

journalctl --disk-usage #查看日志大小
在这里插入图片描述

journalctl --vacuum-size=1G #设定日志存放大小
在这里插入图片描述

journalctl --vacuum-time=1w/d/h #日志在系统中最长存放时间
在这里插入图片描述

journalctl -f #监控日志(实时监控)
在这里插入图片描述
在这里插入图片描述

journalctl _PID=2186 #监控pid为2186的文件
在这里插入图片描述

journalctl -o #设定日志显示方式:short为经典模式;verbose为显示日志的全部字节;export是何传出和备份的二进制格式;json:js格式显示输出
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

journalctl -p #显示指定级别的日志
journalctl -p 0 #emerge系统的严重问题日志
journalctl -p 1 #alert系统中立即要更改的信息
journalctl -p 2 #crit严重级别会导致系统软件不能正常工作
journalctl -p 3 #err程序报错
journalctl -p 4 #warning程序警告
journalctl -p 5 #notice重要信息的普通日志
journalctl -p 6 #info普通信息
在这里插入图片描述

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

journalctl -p 7 #debug程序报错信息
在这里插入图片描述
在这里插入图片描述

二、用journald服务永久保存日志
系统中默认日志是/var/log/journal中,默认日志在系统重启后会被删除
若想永久保存日志:
mkdir /var/log/journal
ls -ld /var/log/journal
在这里插入图片描述
chgrp systemd-journal /var/log/journal/
ls -ld /var/log/journal
chmod 2775 /var/log/journal/
cd /var/log/journal/
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

此时你会发现新建目录底下有一个文件,接下来重启systemctl restart systemd-journald.service此服务(当此服务重启时,日志存放路径会被指定到新建的目录/var/log/journal里面
在这里插入图片描述

测试:完成后我们可重启系统(可在重启系统前看看时间),重启后
用journalctl我们可看到记录是从重启前开始的,这表明永久存放日志修改成功
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

三、rsyslog
#采集日志,日志采集工具
服务名称:rsylog.service

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

配置文件: /etc/rsyslog.conf

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

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

测试1:所有的日志类型和日志级别都放在 /var/log/westos文件里
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

远程登陆此主机时,/var/log/westo会显示服务认证信息和用户认证信息
在这里插入图片描述
在这里插入图片描述

测试2:更改日志采集格式

自定义日志采集格式:时间 主机名 来源 内容
WESTOS_FORMAT #格式名称
%FROMHOST-IP% #日志来源主机IP
%timegenerated% #日志生成时间
%syslogtag% #日志生成服务
%msg% #日志内容
\n #换行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可观察采集格式的改变
在这里插入图片描述

若想所有文件的采集格式都按照你定义的格式,可以设定默认日志
在这里插入图片描述
module(load=“builtin:omfile”
Template=“格式名称”) #默认采用格式
在这里插入图片描述
此时发现其他文件的格式也变成了你所定义的格式
在这里插入图片描述

测试3:日志的远程同步

日志发送端:
vim /etc/rsyslog.conf
@表示使用udp传输日志
@@表示使用tcp传输日志
@172.25.25.xxx #把本机日志用udp的传输方式发送到日志接收端
在这里插入图片描述
在这里插入图片描述
systemctl restart rsyslog.service #重新加载一下
在这里插入图片描述
日志接受端:
打开日志接收插件,指定插件使用端口
在这里插入图片描述在这里插入图片描述
systemctl restart rsyslog.service #重新加载一下
systemctl disable --now firewalld #关闭防火墙
在这里插入图片描述
在这里插入图片描述

测试:
先删除两边之前的日志,然后在日志发送端中做一系列操作,产生的日志会同步发送给日志接收端
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、timedatectl
#CST 中国时间
#UTC 伦敦时间
#RTC 硬件时间
#Time zone 时区(伦敦时间+时区=中国时间)
在这里插入图片描述
timedatectl set-time “2020-xx-xx xx:xx:xx” #设定系统时间
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

timedatectl list-timezones #显示系统所有时区
在这里插入图片描述
在这里插入图片描述

timedatectl set-timezone “Asia/Shanghai” #设定系统时区
在这里插入图片描述

timedatectl set-local-rtc 0 #设定系统时间计算方式,0表示使用utc时间计算方式
timedatectl set-local-rtc 1 #1表示不使用utc计算方式
在这里插入图片描述
在这里插入图片描述

五、时间同步服务
服务名称:chronyd.service
配置文件:/etc/chrony.conf
在这里插入图片描述
服务端:(允许被同步时间,开启时间同步服务且设定级别为10)
vim /etc/chrony.conf
在这里插入图片描述
允许所有ip同步时间,等级为10
在这里插入图片描述
systemctl enable --now chronyd #使设定生效
systemctl status chronyd.service #确认服务开启
在这里插入图片描述

systemctl stop firewalld #关闭防火墙
watch -n1 timedatectl #监测
在这里插入图片描述在这里插入图片描述
客户端:(同步服务端时间)
vim /etc/chrony.conf
在这里插入图片描述
在这里插入图片描述
systemctl restart chronyd.service#使设定生效
在这里插入图片描述
clock -w #系统时间同步到硬件
clock -s #硬件时间同不到系统
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

chronyc sources -v #监测方式
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/shanshuyue/article/details/112986222
今日推荐