linux系统日志管理详解

一、rsyslog服务

1.rsyslog

##此服务是用来采集系统日志的,它不产生日志,只是起到采集的作用

vim /etc/rsyslog.conf				##rsyslog服务配置文件
systemctl restart rsyslog.service	##更改配置文件后需重启服务

在这里插入图片描述

2.rsyslog配置文件的管理
/var/log/messages	##服务信息日志
/var/log/secure		##系统登陆日志
/var/log/cron		##定时任务日志
/var/log/maillog	##邮件日志
/var/log/boot.log	##系统启动日志

在这里插入图片描述

cron.*						/var/log/cron
什么类型的日志.什么级别的日志	日志采集路径
  • 日志的类型分为:
auth			##pam产生的日志
authpriv		##ssh,ftp等登陆信息的验证信息
cron			##时间任务相关
kern			##内核
lpr				##打印
mail			##邮件
mark(syslog)-rsyslog	##服务内部的信息,时间标示
news			##新闻组
user			##用户程序产生的相关信息
uucp			##unix to unix copy,unix主机之间相关的通讯
local 1~7		##自定义的日志设备

##日志级别分为:
debug			##有调试信息的,日志信息最多
info			##一般信息的日志,最常用
notice			##最具有重要性的普通条件的信息
warning			##警告级别
err				##错误级别,阻止某个功能或模块不能正常工作的信息
crit			##严重级别,阻止整个系统或整个软件不能正常工作的信息
alert			##需要立刻修改的信息
emerg			##内核崩溃等严重信息
none			##什么都不记录

注意:从上到下,级别从低到高,记录的信息越来越少
详细的可以查看手册:man 3 syslog
在这里插入图片描述

3.日志的远程同步
  • 在日志发送方:
vim /etc/rsyslog.conf
在文件中任意行加入
*.*	@172.25.254.210			##在*.*表示任意类型。任意级别  "@"表示UDP协议发送,“@@”表示TCP协议发送
systemctl restart rsyslong	##更改rsyslog.conf后需要重启服务才能生效

在这里插入图片描述

  • 在日志接受方:
vim /etc/rsyslog.conf
14 # Provides UDP syslog reception      ##UDP接口
15 $ModLoad imudp						##日志接收模块
16 $UDPServerRun 514					##开启接收端口

systemctl restart rsyslog				##重启日志服务
systemctl stop    firewalld				##关闭防火墙
systemctl disable firewalld				##设定火墙开机关闭

在这里插入图片描述

  • 测试:
  > /var/log/messages	##在发送方和接收方都清空日志文件

在日志的发送方

logger test
cat /var/log/messages			##查看日志已经生成

在日志接收方查看

cat /var/log/messages

在这里插入图片描述

4.日志采集格式的设定
vim /etc/rsyslog.conf

$template NAME,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"		
##名字必须大写,参数之间可用'空格','|'等方式断开

*.info;masil.none;authpriv.none;cron.none	/var/log/messages;NAME	
##在需要用该格式的日志路径后面加;NAME
参数解释
%timegenerated%显示日志时间
%FROMHOST-IP%显示主机IP
%syslogtag%日志记录目标
%msg%日志内容
\n换行

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

二、时间同步服务

1.chronyd服务
vim /etc/chrony.conf			##同步时间配置文件

在这里插入图片描述
该服务可用来同步其他主机的时间

  • 服务端
vim /etc/chrony.conf
#在该文件中更改行数22和29
22 allow 172.25.254.0/24	##允许哪些客户端来同步本机时间
29 local stratum 10			##本机不同步任何主机的时间,本机作为时间源
systemctl restart chronyd	##重启chronyd服务

在这里插入图片描述

  • 客户端
vim /etc/chrony.conf
#在该文件中,先删除3~6行
3 server 0.rhel.pool.ntp.org iburst
4 server 1.rhel.pool.ntp.org iburst
5 server 2.rhel.pool.ntp.org iburst
6 server 3.rhel.pool.ntp.org iburst
再加入
3 server 172.25.254.210 iburst		##本机立即同步210主机的时间

systemctl status chronyd.service	##查看同步状态
systemctl stop firewalld			##关闭防火墙
chronyc sources -v					##查看同步了谁的时间

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

2.timedatectl 命令
timedatectl						##管理系统时间
			status				##查看当前时间信息
			set-time			##设定当前时间
			set-timezone		##设定当前时区
			set-local-rtc 0|1	##设定是否使用utc时间,0使用utc,1使用local,使用local可解决win10时间错乱
								##可在/etc/adjtime中查看当前设定
			list-timezone		##查看支持的所有时区

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

三、查看日志命令

1.journalctl的用法
journalctl				##日志查看工具
			-n 3		##查看最近3条日志
			-p err		##查看错误日志
			-o verbose	##查看日志的详细参数
			--since ‘’	##查看从什么时间开始的日志
			--until	‘’	##查看到什么时间为止的日志

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

2.如何使用system-journald保存系统日志

默认system-journald是不保存系统日志到硬盘的
那么关机后再次开机只能看到本次开机之后的日志
上次关机之前的日志是无法查看的

mkdir /var/log/journal					##建立存放日志目录,名字只能叫journal,
chgrp systemd-journal /var/log/journal	##改变journal的用户和组为,systemd和journal
chmod g+s /var/log/journal				##给组内用户读的权限
killall -1 systemd-journald				##重新加载配置

ls /var/log/journal
946cb0e817ea4adb916183df8c4fc817

在这里插入图片描述
在这里插入图片描述
注:该文件不会自动删除日志,长时间累计,会充满磁盘

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值