前言:
在Linux系统内核和许多程序会产生各种错误信息、警告
信息和其他的提示信息,这些信息对管理员了解系统的运行
状态是非常有用的,所以应该把它们写到日志文件中去,为
了方便查阅,可以把内核信息与其他信息分开,单独保存到
一个独立的日志文件中。本篇文章我们将了解到Linux系日
志管理。
正文:
一、rsyslog服务
此服务是用来采集系统日志的,该服务补产生日志,只是起到日志的
采集作用。
系统日志
•
进程和操作系统内核需要能够为发生的事件记录日志 , 这些日志可用于系统审核和问题的故障排除 , 一般这些日志永久存
储 /var/log 目录中。系统文件记录信息如下表 :日志文件 用途
命 令 | 说 明 |
/var/log/messages | 大多数系统日志信息记录在此处。 |
/var/log/secure | 安全和身份认证相关的消息和错误的日志文件 |
/var/log/maillog | 与邮件服务器相关的日志文件 |
/var/log/cron | 与定时任务相关的日志文件 |
/var/log/boot.log | 与系统启动有关的日志文件。 |
(1)大多数系统日志信息记录在此处。
(2)安全和身份认证相关的消息和错误的日志文件
(3)与邮件服务器相关的日志文件
(4)与定时任务相关的日志文件
(5)与系统启动有关的日志文件。
三、指定日志的采集路径
输入命令进行相关文件路径采集的设定
命令:vim /etc/rsyslog.conf
systemctl trstart sshd ##命令的目的是为了生成日志
四、日志的远程同步
进行相关的环境准备:
发送端:
1、在日志发送方,输入命令进行相关内容的编辑
命令:vim /etc/rsyslog.conf
格式: *.* @ip ##@表示协议发送 @@表示tcp发送
接收端:
接收端:
(1)在日志的接收端输入相关的命令即进行相应的设定
vim /etc/rsyslog.conf ###对该文件进行相应的编辑
$ModLoad imudp ###在该文件的第十五行,日志接收模块
$UDPServerRun 514 ###开启接受端口
(2)输入相关命令进行服务的重启和防火墙的关闭
systemctl restart rsyslog ###进行服务的重启
systemctl stop firewalld ###关闭防火墙
systemctl disable firewalld ###设定防火前开机时不进行自启动
测试端:
(1)在发送和接受之前需要清空日志中所包含的内容,便于实验的观察,
输入命令如下:
命令: > /var/log/messages ###清空日志中的内容
(2)在日志发送方,输入以下命令开始测试
命令:logger test ###产生对应内容的日志
> /var/log/messages ###清空日志中的内容
七、日志采集格式的设定
输入相关的命令,进行日志采集格式的设定:
命令:vim /etc/rsyslog.conf ###进行文件的编写
编辑内容为:$template LOGFMT, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
###设定采集格式
*.* /var/log/westos;LOGFMT ###采集格式存的位置
其中 %timegenerated% ###显示日志的时间
%FROMHOST-IP% ###显示日志的主机ip
%syslogtag% ###显示日志记录目标
%msg% ###x显示日志内容
\n ###进行换行操作
八、时间同步设置
(1) 服务名称:chronyd
(2)服务端:
在服务端继进行相应环境的设定
命令: vim /etc/chrony.conf ###进行相关文件的编辑
编辑内容如下:
allow 172.25.254/24 ###第22行,表示ip号在此网段的主机可以同步本纪时间
local stratum 10 ###优先级的设定,表示本机不同步任何其他主机,本机作
为时间源
九、系统时间的管理
timedatectl 命令
timedatectl ###管理系统的时间
timedatectl status ###显示当前时间
1、
2、
utc时间的计算方式:世界时间+所在的时区
timedatectl set-timezone "Asia/Shanghai" ###设置当前时区为上海
(2)查看当前可用的时区
timedatectl list-timezone ###查看当前可用时区的列表
(3)进行当地时间的设定
timedatectl set-time "2019-10-15 02:45:36" ###进行当地时间的设定
(4)设置是否使用utc时间
timedatectl set-local-rtc 0 ###设置开启utc时间
timedatectl set-local-rtc 1 ###设置关闭utc时间
十、查看内存中的日志
journalctl :进行日志的查看
(1)规定日志行数的查看
journalctl -n 3 ###查看日志的前三行
(2)错误日志的查看
journalctl -p err ###错误日志的查看
(3)查看日志的详细参数
journalctl -o verbose ###进行日志详细参数的查看
(4)查看固定时间段的日志
journalctl --since "2019-10-10 14:47:00" --until "2019-10-10 14:47:04"
###查看该时间段的日志
(5)使用systemd-jounal 进行日志的保存
在默认情况下,系统的日志是不会进行保存到硬盘的,也就是说系统进行重启
之后是查看不到启动之前的日志的,那么我们可以使用systemd-journal来解
决这个问题.
mkdir /var/log/joournal ###建立一个目录(注意目录的名称不能随意改变,否则需
要进行配置文件的修改)
chgrp systemd-journal /var/log/journal ###将该目录添加到这个组上
chmod g+s /var/log/journal ###赋予该组的特殊权限
killall -1 systemd-journald ###进行重启