文章目录
1、实验环境
rhel7:192.168.1.100
rhel8:192.168.1.200
2、journald
服务名称:systemd-journald.service
journalctl #日志查看工具
默认日志存放路径:/run/log
(1)实验一:journalctl命令的用法
journalctl
不是日志的产生者,只是日志的搬运工
journalctl
-n 3 | 显示日志的最新三条 |
- -since “2020-02-13 17:00” | 显示17:00后的日志 |
- -until “2020-02-13 17:00” | 显示日志到17::00 |
-o | 设置日志显示方式 |
-o short | 经典模式显示方式 |
-o verbose | 显示日志全部字节 |
-o export | 适合传出和备份的二进制格式 |
-o json | js格式显示输出 |
-p err | 显示指定级别的日志 |
-F PRIORITY | 查看可控日志级别 |
-u sshd | 指定查看服务 |
- - disk-usage | 查看日志存放空间大小 |
- -vacuum-size=1G | 设定日志存放大小(临时) |
–vacuum-time=1W | 日志在系统中最长存放时间 (临时) |
-f | 监控日志 |
journalctl -p
日志级别 | ||
---|---|---|
0 | emerg | 系统的严重问题日志 |
1 | alert | 系统中立即要更改的信息 |
2 | crit | 严重级别日志:会导致系统软件不能正常工作 |
3 | err | 程序报错 |
4 | warning | 程序警告 |
5 | notice | 重要信息的普通日志 |
6 | info | 普通信息 |
7 | debug | 程序排错信息 |
默认为经典模式
若要永久设定日志存放大小及存放时间
journalctl -f
欲查看更加详细的日志
搜索21485
(2)实验二:用journald服务永久存放日志
系统中默认日志在:/run/log/journal中
默认方式在系统重启后日志会被清理要永久保存日志请完成以下操作
mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod 2775 /var/log/journal
systemctl restart systemd-journald.service
当服务重启后日志存放路径会被指定到:/var/log/journal
测试:
1)在操作以上步骤之前查看日志
2)重启系统
3)再次查看日志
4)可以看到日志是不会被保存下来,只能看到重启之后的日志
5)完成以上操作后再次重启系统,可看到日志被保存下来
3、rsyslog
服务名称:rsyslog.service
日志存放:
/var/log/messages #系统服务日志,常规信息,服务报错
/var/log/secure #系统认证信息日志
/var/log/maillog #系统邮件日志信息
/var/log/cron #系统定时任务信息
/var/log/boot.log #系统启动日志信息
cat /var/log/messages
cat /var/log/secure
配置文件:/etc/rsyslog.conf
(1)实验一:自定义日志采集路径
vim /etc/rsyslog.conf
日志类别.日志级别 日志存放路径
* . * /var/log/westos #把系统中所有级别的日志存放到westos中
* . * ;authpriv.none /var/log/westos #把系统中所有级别的日志存放到westos中,但authpriv不存放westos中
==日志类型==
auth | 用户认证 |
authpriv | 服务认证 |
cron | 时间任务 |
kern | 内核类型 |
邮件 | |
news | 系统更新信息 |
user | 用户 |
日志级别
debug
info
notice
warning
err
crit
alert
emerg
none
(2)实验二:如何更改日志采集格式
1)定义日志采集格式
$template WESTOS, "%FROMHOST-IP% %timegenerated% %syslogtag% %msg%\n"
其中:WESTOS: 格式名称
%FROMHOST-IP%:日志来源主机
%timegenerated%:日志生成时间
%syslogtag%:日志生成服务
%msg%:日志内容
\n:换行
2)设定日志采集格式应用
*.info;mail.none;authpriv.none;cron.none /var/log/messages;WESTOS
(3)实验三:日志的远程同步
rhel7:192.168.1.100
存放日志作为日志接收端,所有人日志都存放到此台主机
rhel8:192.168.1.200
发送日志到rhel7主机中
1)在rhel7中设定接收所有人的日志
systemctl stop firewalld
vim etc/rsyslog.conf
$ModLoad imudp #打开日志同步接收插件
$UDPServerRun 514 #指定插件使用接口
systemctl restart rsyslog.service
查询端口
2)在rhel8中设定发送日志到rhel7中
vim /etc/rsyslog.conf
*.* @192.168.1.100
systemctl restart rsyslog.service
@ 表示使用UDP传输日志
@@ 表示使用TCP传输日志
@192.168.1.100
表示把本机日志用UDP的传输方式发送到192.168.1.100
测试:
在rhel7和rhel8中
> /var/log/messages
在rhel8中输入
logger westos test message
在rhel7中可看到rhel8中生成的日志
4、timedatectl
timedatectl set-time "2020-02-14 10:10:10" #设定系统时间
timedatectl list-timezones #显示系统的所有时区
timedatectl set-timezone "America/New_York" #设定系统时区
timedatectl set-local-rtc 0/1
#设定系统时间设定方式:0表示使用UTC时间计算方式,1表示使用普通时间计算方式
5、时间同步服务
服务名称:chronyd.service
配置文件:/etc/chrony.conf
在rhel7作为时间源,rhel8同步rhel7时间
在rhel7中:
vim /etc/chrony.conf
allow 192.168.1.0/24 #允许192.168.1.0网段主机同步时间
local stratum 10 #开启时间同步服务器功能并设定级别为10
systemctl restart chronyd.service
systemctl stop firewalld
在rhel8中:
vim /etc/chrony.conf
pool 192.168.1.100 iburst
systemctl restart chronyd.service
在rhel8中查看时间:
显示已经变成rhel7中时间
使用chronyc命令查看时间效果
chronyc sources -v