一.什么是系统日志
1.系统日志
由进程产生,可以监控系统中发生的事件,便于用户检查维护,保护系统安全。
2.系统日志的分类
/var/log/messages ##系统服务及日志,包括服务的信息,报错等等
/var/log/secure ##系统认证信息日志
/var/log/maillog ##系统邮件服务信息
/var/log/cron ##系统定时任务信息
/var/log/boot.log ##系统启动信息
![](https://i-blog.csdnimg.cn/blog_migrate/42e2e02a40b188bb527ac2d1fc3c94fb.png)
二.日志管理服务
1.日志设备(日志类型)
auth ##pam产生的日志authpriv ##ssh,ftp等登录信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark(syslog)–rsyslog ##服务内部的信息,时间标识
news ##新闻组
user ##用户程序产生的相关信息
uucp ##unix to unix copy, unix主机之间相关的通讯
local 1~7 ##自定义的日志设备
![](https://i-blog.csdnimg.cn/blog_migrate/0a67f0b5d29abeb6fb910c9540f096da.png)
2.日志的级别
debug ##有调式信息的,日志信息最多
info ##般信息的日志,最常用
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ##错误级别,阻止某个功能或者模块不能正常工作的信息
crit ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录
注意:从上到下,级别从低到高,记录的信息越来越少,详细可查: man 3 syslog
如图二所示,通常在日志设备后标注日志级别,mail.none,news.crit
3.日志管理服务:rsyslog
a.rsyslog 负责采集和分类存放日志
b.管理日志是,一般是修改配置文件:/etc/rsyslog.conf
修改后运行如下:
三.日志同步
1.服务端
a,关闭防火墙
![](https://i-blog.csdnimg.cn/blog_migrate/aeba2282c0466f77af4073e3c3cc7334.png)
b,打开传输接口(根据客户端传输方式,@UDP,@@TCP)
![](https://i-blog.csdnimg.cn/blog_migrate/d3b85d3cf567b909264f730ec9c91a82.png)
更改配置文件后,查看接口如下
![](https://i-blog.csdnimg.cn/blog_migrate/e26ccbe2134333beb3c895a768085600.png)
2.客户端
更改配置文件,将日志同步给172.25.254.107的主机
![](https://i-blog.csdnimg.cn/blog_migrate/48cd570c104c1e1e563026669979ef2b.png)
客户端生成的日志,服务端主机同步生成
![](https://i-blog.csdnimg.cn/blog_migrate/767d4fe86c48f899b732d101f49a30a3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d48d15e610bce0a3aa65c673ce762b15.png)
注意:接受方可以用tail -f /var/log/message监控日志生成
3.日志采集格式
更改配置文件 /etc/rsyslog.conf
%timegenerated% ##显示日志时间 %FROMHOST-IP% ##显示主机ip
%syslogtag% ##日志记录目标 %msg% ##日志内容
\n ##换行
![](https://i-blog.csdnimg.cn/blog_migrate/cd3f7336d5ad43277202aa78e56535aa.png)
四.日志分析工具journal
1.格式 systemd-journald
journalctl ##直接执行,浏览系统日志
journalctl -n 3 ##显示最新3条
![](https://i-blog.csdnimg.cn/blog_migrate/547cfafe8a4e57de8da5b382822c0fac.png)
journalctl -p err ##显示报错
![](https://i-blog.csdnimg.cn/blog_migrate/6e0b42a85f24f289ec350a96c59710c4.png)
journalctl -f ##监控日志
![](https://i-blog.csdnimg.cn/blog_migrate/d66275cf8910f04b31f45965fff7fc5b.png)
journalctl --since --until ## --since "[YYYY-MM-DD] [hh:mm:ss]" 从什么时间到什么时间的日志
![](https://i-blog.csdnimg.cn/blog_migrate/eae0dfb45bdebc137b22b3d199f6c27c.png)
journalctl -o verbose ##显示日志能够使用的详细进程参数
##_SYSTEMD_UNIT=sshd.service服务名称
##_PID=1182进程pid
2.系统默认情况下会重启会清空日志信息,若保留,须操作:
mkdir /var/log/journal
chown root:systemd-journal /var/log/journal
chmod 2755 /var/log/journal
killall -1 systemd-journald
ls /var/log/journal/4513ad59a3b442ffa4b7ea88343fa55f
system.journal user-1000.journal
![](https://i-blog.csdnimg.cn/blog_migrate/c73bd9767cac6fbc9f58dca66b4ed811.png)
五.时间同步
1.服务端(关闭防火墙)
修改主配置文件 /etc/chrony.conf
![](https://i-blog.csdnimg.cn/blog_migrate/540775744acf467d6818667f0472e899.png)
2.客户端修改主配置文件 /etc/chrony.conf
![](https://i-blog.csdnimg.cn/blog_migrate/bb801ef8aa560c838bdb81531f54f761.png)
3.测试
![](https://i-blog.csdnimg.cn/blog_migrate/d1c3f21011e4c7513b49ddcb4448301d.png)
注意:^?表示时间未同步,文件重新加载后,服务端与客户端时间一致
![](https://i-blog.csdnimg.cn/blog_migrate/8e14b69fc3d0fac0997b9116bb07f7ed.png)
六.timedatectl 命令
timedatectl status ##显示当前时间信息
![](https://i-blog.csdnimg.cn/blog_migrate/db1566c538f0b78cb788517d1ccf98f1.png)
timedatectl set-time ##设定当前时间
![](https://i-blog.csdnimg.cn/blog_migrate/b95ed31ebeca53ab562e8daf5d985c45.png)
timedatectl set-timezone ##设定当前时区
timedatectl set-local-rtc 0|1 ##设定是否使用utc时间
注意:此功能的实现需要联网
timedatectl list-timezones ##显示系统支持的时区