Linux入门(10)——日志管理
1. journal 管理
- 默认日志查看
记录系统日志的服务名为:systemd-journald.service
存放日志的默认路径为:/run/log
控制命令为: journalctl
[root@rhserver Desktop]# journalctl -n 3 #日志的最新3条
[root@rhserver Desktop]# journalctl --since "2020-05-01 11:00:00" #显示11:00后的日志
[root@rhserver Desktop]# journalctl --until "2020-05-01 11:05:00" #显示日志到11:05
[root@rhserver Desktop]# journalctl -o [options] #设定日志的显示方式
[root@rhserver Desktop]# journalctl -p [options] #设定日志的显示方式
[root@rhserver Desktop]# -F PRIORITY #查看可控日志级别
[root@rhserver Desktop]# -u sshd #指定查看服务
[root@rhserver Desktop]# --disk-usage #查看日志大小
[root@rhserver Desktop]# --vacuum-size=1G #设定日志存放大小
[root@rhserver Desktop]# --vacuum-time=1w #日志在系统中最长存放时间
[root@rhserver Desktop]# -f #监控日志
[root@rhserver Desktop]# journalctl _PID=10924 _SYSTEMD_UNIT=sshd.service#显示指定日志
日志显示方式:
- -o [options] :
options | 作用 |
---|---|
short | 经典模式显示日志 |
verbose | 显示日志的全部字节 |
export | 适合传出和备份的二进制格式 |
json | js格式显示输出 |
- -p [options] :
options id | options name | 作用 |
---|---|---|
0 | emerg | 系统的严重问题日志 |
1 | alert | 系统中立即要更改的信息 |
2 | crit | 严重级别会导致系统软件不能正常工作 |
3 | err | 程序报错 |
4 | warning | 程序警告 |
5 | notice | 重要信息的普通日志 |
6 | info | 普通信息 |
7 | debug | 程序拍错信息 |
- 默认日志永久存放
默认方式在系统重启后日志会被清理,若要永久保存日志信息需要对日志进行重新定向。
[root@rhserver Desktop]# mkdir /var/log/journal
[root@rhserver Desktop]# chgrp systemd-journal /var/log/journal
[root@rhserver Desktop]# chmod 2775 /var/log/journal
[root@rhserver Desktop]# systemctl restart systemd-journald.service
当服务重启日志存放路径会被指定至:/var/log/journal
2. rsyslog
服务名称:rsyslog.service
配置文件:/etc/rsyslog.conf
默认存放路径:
/var/log/messages #系统服务日志,常规信息,服务报错
/var/log/secure #系统认证信息日志
/var/log/maillog #系统邮件日志信息
/var/log/cron #系统定时任务信息
/var/log/boot.log #系统启动日志信息
- 自定义采集路径
编辑配置文件可以自定义日志的存放路径。
#格式 日志类型.日志级别 日志存放路径
*.* /var/log/journal #把系统中所有级别的日志存放到journal中
*.*;authpriv.none /var/log/journal #除authpriv不存放到journal中,其余所有级别日志均存放到journal中
日志类型 | 说明 |
---|---|
auth | 用户认证 |
authpriv | 服务认证 |
cron | 时间任务 |
kern | 内核类型 |
邮件 | |
news | 系统更新信息 |
user | 用户 |
日志级别 | 说明 |
---|---|
debug | 程序排错信息 |
info | 程序常规运行信息 |
notice | 重要信息的普通日志 |
waring | 程序警告 |
err | 程序报错 |
crit | 严重级别会导致系统软件不能正常工作 |
alert | 系统中立即要更改的信息 |
emerg | 系统的严重问题日志 |
none | 不采集 |
- 自定义采集格式
[root@rhclient Desktop]# vim /etc/rsyslog.conf #编辑rsyslog配置文件
# 定义采集格式
$template FORMAT, "%FROMHOST-IP% %timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
# 指定生效的日志范围
*.*;authpriv.none FORMAT
# 设定默认生效
module(load="builtin:omfile" Template="FORMAT") #默认使用FORMAT格式
设定名 | 内容 |
---|---|
%FROMHOST-IP% | 日志来源主机IP |
%timegenerated% | 日志生成时间 |
%syslogtag% | 日志生成服务 |
%msg% | 日志内容 |
\n | 换行 |
- 日志的远程同步
日志发送端为rhclient :192.168.158.128
日志接收端为rhserver:192.168.158.129
发送端操作:
[root@rhclient Desktop]# vim /etc/rsyslog.conf #编辑rsyslog配置文件
#将以下内容添加至rsyslog的配置文件中
*.* @192.168.158.129
# @ 表示使用udp传输日志
# @@ 表示使用tcp传输日志
[root@rhclient Desktop]# systemctl restart rsyslog #重启rsyslog服务
接收端操作:
[root@rhserver Desktop]# csystemctl stop firewalld #关闭防火墙
[root@rhserver Desktop]# vim /etc/rsyslog.conf #编辑编辑rsyslog配置文件
# 修改配置文件内容
19 module(load="imudp") #打开日志接受插件
20 input(type="imudp" port="514") #指定插件使用接口
[root@rhclient Desktop]# systemctl restart rsyslog #重启rsyslog服务
[root@rhclient Desktop]# netstat -antlupe | grep rsyslog #查看端口
3. 时间同步服务
服务名称: chronyd.service
配置文件: /etc/chrony.conf
使用一台主机作为时间服务器同步其他主机的时间。
服务端操作:
[root@rhclient Desktop]# vim /etc/chrony.conf
26 allow 192.168.158.0/24 #允许192.168.158.0网段主机同步时间
29 local stratum 10 #开启时间同步服务器功能并设定级别为10
[root@rhclient Desktop]# systemctl restart chronyd.service
[root@rhclient Desktop]# systemctl stop firewalld
客户端操作:
[root@rhclient Desktop]# vim /etc/chrony.conf
pool 192.168.158.129 iburst
[root@rhclient Desktop]# systemctl restart chronyd
客户端检验:
客户端时间已经与服务端时间同步
使用chronyc 命令查看时间效果:
[root@rhclient Desktop]# chronyc sources -v
210 Number of sources = 1