日志管理
systemd-journald:临时,服务器重启后,日志随之消失
rsyslog:永久,日志文件永久保存,配置文件:/etc/rsyslog.conf
日志文件的种类:
- 1、内核及系统日志
- 2、用户日志
- 3、程序日志
主要日志文件:
/var/log/dmesg :记录linux系统在引导过程中的各种事件信息
/var/log/lastlog :记录每个用户最近的登录事件信息
/var/log/wtmp :记录每个用户登录、注销及系统启动和停机事件
/var/log/btmp :记录失败的、错误的登录尝试及验证事件
分析日志:
1、日志优先级
优先级由低到高:
debug--程序或系统调试级别
info--一般信息性事件
notice--不会影响正常功能,但是需要注意的事件
warning--可能影响系统功能,需要提醒用户的重要事件
err--运行出现错误,非严重错误状况
cirt--比较严重的情况
alert--必须立即采取措施解决的问题
emerg--会导致主机系统不可用的情况
tail -f 实时监控日志文件
tail -f /var/log/messages
日志记录格式:
时间标签:消息发出的日期和时间
主机名:生成消息的主机名称
子系统名称:发出消息的应用程序名称或者进程名和PID编号
消息:消息具体的内容
手动发送syslog消息
向rsyslog服务发送消息并记录在/var/log/boot.log日志文件中
logger -p local7.notice "chenyu"
主要用来测试rsyslog服务配置的
journalctl -n 默认查看最新10条日志信息,-n后面也可以跟数字
journalctl -f 实时监控日志
journalctl -p err 可以按照日志级别的优先级进行显示日志,显示该优先级及以上日志信息
显示某个时间段的日志
journalctl --since today
journalctl --since "2020-11-11 21:00:00" --until "2020-11-11 21:10:00"
journalctl --since "-1 hour"
journalctl -o verbose ---查看详细日志信息,后可以跟条件进行查找
如:
journalctl --since "-1 hour" -o verbose _COMM=su
(1)_COMM 是命令的名称
(2)_EXE 是进程的可执行文件的路径
(3)_PID 是进程的PID
(4)_UID 是运行该进程的用户的UID
(5)_SYSTEMD_UNIT 是启动该进程的systemd单元
用户日志:
lastlog
users:查看系统中被使用用户的次数
who:查看哪台机器在哪个时间的哪个终端登录的哪个用户
w:查看哪台机器在哪个时间的哪个终端登录的哪个用户,并显示正在操作的命令
wtmp
last:显示成功访问过服务器的用户信息
btmp
lastb:显示失败访问过服务器的用户信息
远程收集日志
[root@node1 ~]# vim /etc/rsyslog.conf
mail.* ldap.example.com
[root@node1 ~]# systemctl restart rsyslog
[root@node1 ~]# systemctl enable rsyslog
*.*
第一个*:事件
第二个*:优先级
时钟同步
timedatectl ---查看当前的时间、时区和NTP同步设置
timedatectl list-timezones 列出时区
timedatectl set-timezone 设置时区
如:
timedatectl set-timezone "Asia/Shanghai"
更改系统的当前时间:
语法:
timedatectl set-time "YYYY-MM-DD hh:mm:ss"
或者使用
语法:
date -s "YYYY-MM-DD hh:mm:ss"
chrony
UDP协议传输报文,端口323
chrony由chronyd和chronyc两个程序组成
chronyd不能与ntpd同时使用
服务端:
1、安装chrony
[root@node1 ~]# yum -y install chrony
2、修改配置
[root@node1 ~]# vim /etc/chrony.conf
local stratum 10 -----不去同步任何人的时间。时间同步服务级别
allow 172.16.30.0/24 ----允许172.16.30.0/24网段内的主机来同步我的时钟服务器
3、重启服务
[root@node1 ~]# systemctl restart chronyd
[root@node1 ~]# systemctl enable chronyd
4、设置防火墙
[root@node1 ~]# firewall-cmd --add-service=ntp --permanent
[root@node1 ~]# firewall-cmd --reload
客户端:
[root@node1 ~]# yum -y install chrony
[root@node1 ~]# vim /etc/chrony.conf
server 172.16.30.20 iburst
systemctl restart chronyd
systemctl enable chronyd
[root@node1 ~]# hwclock -w
chronyc 命令 ---在客户端使用
chronyc sources ---查看时间同步源信息
chronyc sourcestats -v ---查看时间同步源状态信息