Linux大神进阶九:优化系统中的日志管理
1.日志的理解
日志:日志里面记录的是服务器的状态;日志的存在可以使管理员提前知道服务器的各种状态,如果服务器出现什么问题可以提前处理。进程和操作系统内核需要能够为发生的事件记录日志,这些日志可用于系统审核和问题的排出,一般永久保存在/var/log目录中。
2.系统文件记录信息表
注:文件记录信息表内的路径即为日志的采集路径;日志采集规则在/var/log/file(文件名)中设置
路径 | 注释 |
---|---|
/var/log/messages | ##服务信息日志 |
/var/log/secure | ##系统登陆日志 |
/var/log/cron | ##定时任务日志 |
/var/log/maillog | ##邮件日志 |
/var/log/boot.log | ##系统启动日志 |
3.系统文件日志类型表
日志类型 | 注释 |
---|---|
auth pam | ##产生的日志 |
authpriv | ##ssh,ftp等登陆信息的验证信息 |
cron | ##时间任务相关 |
kern | ##内核 |
lpr | ##打印 |
##邮件 | |
mark | ##(syslog)-rsyslog 服务内部的信息,时间标识 |
news | ##新闻组 |
user | ##用户程序产生的相关信息 |
uucp | ##unix to unix copy,unix主机之间相关的通讯 |
local 1~7 | ##自定义的日志设备 |
4.系统文件日志级别表
注:下表中,级别递增,级别从低到高,记录的信息越来越少,详细的可以查看手册:man 3 syslog;
日志级别 | 注释 |
---|---|
debug | ## 有调试信息的,日志信息最多 |
info | ##一般信息的日志,最常用的 |
notice | ##最具有重要性的普通条件的信息 |
warning | ##警告级别 |
err | ## 错误级别,阻止某个功能或者模块不能正常工作的信息 |
crit | ##严重级别,阻止整个系统或者整个软件不能正常工作的信息 |
alert | ##需要立刻修改的信息 |
emerg | ##内核崩溃等严重信息 |
none | ##什么都不记录 |
4.系统文件日志管理
4.1理解
***日志管理方式(rsyslog)*:开源软件,被广泛用于Linux系统以TCP/UDP协议转发和接受日志。
(1)主配置文件: /etc/rsyslog.conf(指定日志保存的位置修改配置文件,修改后重启rsyslog服务生效)
(2)修改方式: * . /var/log/westos.log
利用 tail -f 日志文件名 (输出文件的后10行,实时更新)
4.2日志的定向采集
4.2.1理解
日志的定向采集:将什么类型、什么级别的日志放在哪个路径下。
这样做也有利于日志的管理和查看,因此应该设计采集规则。
4.2.2实验环境的配置
①首先我们将两个虚拟机进行重置;
②重新配置网络;
③用真机的两个图形界面代替两个虚拟机;
可以将虚拟机退出图形化界面的形式;(init 3)
4.2.3 实验-日志的定向采集
注:**实际在企业当中,我们要将日志分类管理,可以参考第三项系统日志管理里面的类型和级别,将 .改为日志类型.日志级别,然后存放在指定的文件当中即可。
步骤 命令 | 注释 |
---|---|
(1) vim /etc/rsyslog.conf | ##打开设定日志采集规则的文件 |
(2) | ##在日志采集文件里面设置将任意类型、任何级别的日志都存放在/var/log/westos下;如果westos文件不存在,会自动生成该文件 命令格式为*.* /var/log/westos |
(3) systemctl restart rsyslog | ##重启日志管理服务 |
(4) systemctl restart sshd | ##重启远程服务 |
(5) cat /var/log/westos | ##查看日志记录的结果 |
4.2.4 结果
4.3日志的远程同步
4.3.1理解
日志的远程同步:为了查看多台主机日志,方便管理多台主机;
4.3.2实验步骤
步骤 | 命令 | 注释 |
---|---|---|
1. 发送方(server)设置 | ||
①vim /etc/rsyslog.conf | ##打开日志管理文件 | |
②(/etc/rsyslog.conf RULES 下的55行) * .* @172.25.254.219 | ##添加接收方的ip,保存退出(udp) | |
②(/etc/rsyslog.conf RULES 下的55行) * .* @@172.25.254.219 | ##添加接收方的ip,保存退出(tcp) | |
③systemctl restart rsyslog | ##重启日志管理服务 | |
2. 接收方(client)设置 | ||
①vim /etc/rsyslog.conf | ##打开日志管理文件 | |
②udp | (15行) #$ModLoad imudp 改为$ModLoad imudp | ##日志接收模块,udp |
udp | (16行)#$UDPServerRun 514 | ##开启接收模块,保存退出 |
tcp | (19行) #$ModLoad imtcp改为$ModLoad imtcp | ##日志接收模块,tcp |
tcp | (20行)#$TCPServerRun 514 | ##开启接收模块,保存退出 |
③ | systemctl restart rsyslog | ##重启日志管理服务 |
④ | systemctl stop firewalld | ##关闭防火墙 |
systemctl disable firewalld | ## 关闭防火墙 | |
3…测试设置 | ||
①(server) | > /var/log/messages | ##清空日志文件 |
(client) | > /var/log/messages | ##清空日志文件 |
②(server) | logger test | ##产生日志 |
(server) | cat /var/log/messages | ##查看日志已经生成 |
③ (client) | cat /var/log/messages | ##在日志接受方查看远程主机发送过来的同步日志 |
4. 清除 /etc/rc.d/rc.local文件产生的日志 | ||
①(server) | > /etc/rc.d/rc.local | ## 清除 /etc/rc.d/rc.local文件产生的日志 |
(server) | reboot | ##重启发送端; |
②(client) | systemctl restart rsyslog | ## 重启日志管理 |
systemctl stop firewalld | ## 关闭防火墙 | |
systemctl disable firewalld | ## 关闭防火墙 | |
5…重新测试设置 | ||
①(server) | > /var/log/messages | ##清空日志文件 |
(client) | > /var/log/messages | ##清空日志文件 |
②(server) | logger test | ##产生日志 |
(server) | cat /var/log/messages | ##查看日志已经生成 |
③ (client) | cat /var/log/messages | ##在日志接受方查看远程主机发送过来的同步日志 |
4.3.3实验结果
Result1 发送方(server)设置Result2 接收方(client)设置
Result3 测试设置
****Result4 清除 /etc/rc.d/rc.local文件产生的日志 ****
Result5 重新测试4.3.4 系统排错
注意:按照先后顺序进行排错,案例操作最好按部就班。
错误 | 命令 | 注释 |
---|---|---|
1.网络是否配置正确 | (server) ifconfig eth0 | ## #查看当前网络 |
(server) ping 172.25.254.32 | ##和真机网络区域是否一致 | |
(server) ping 172.25.254.132 | #当前网络是否配置正确 | |
(server) ping 172.25.254.232 | #在server查看desktop是否连通 | |
(desktop) ping 172.25.254.32 | ##和真机网络区域是否一致 | |
(desktop) ping 172.25.254.232 | #当前网络是否配置正确 | |
(desktop) ping 172.25.254.132 | ##在desktopr查看server是否连通 | |
2.网络连接硬件的错误 | ①(真机)virt-manager | ##打开虚拟机管理 |
②( 虚拟机管理)打开对应的虚拟机(server/desktop) | ##在 虚拟机管理中进行操作; | |
③(真机)ifconfig eth0 | ##查看对应的网口(04:0b); | |
④( 虚拟机管理)ifconfig eth0 | ##查看对应的网口(04:0b); | |
⑤( 虚拟机管理)remove 出错的网口 | ##(04:0b); | |
⑥(Add new Virtual Hardware)点击NIC:21????????d5 | ##添加其他网口; | |
⑦(Add new Virtual Hardware)Network>>>Device model>>>virtl0>>>storge>>finish | ##修改配置并保存 | |
3. /etc/rsyslog.conf配置文件出错 | 注意:server的修改,仅仅修改接收方ip;client的修改,仅仅修改udp方式 | |
①udp | (server) * .* @ip (client) udp修改去掉注释(15.16行) | |
②tcp | (server) * .* @ip (client) tcp修改去掉注释(19,20行) | |
4. 注意客户端关闭防火墙 | ||
systemctl stop firewalld | ## 关闭防火墙 | |
systemctl disable firewalld | ## 关闭防火墙 |
2.硬件错误的排错result