1、背景
公司使用的IDS(suricata)入侵检测设备,因开启服务检测日志打印,suricata.log每天产生大量日志,隔三差五触发服务器内存不足告警。
2、处理方案
由于该日志用来分析suricata服务及规则是否生效,不建议关闭该日志打印。通过创建日志清空脚本,crond做定时任务可以解决该问题。
3、流程记录
- 创建clearIDSlog.sh脚本,并添加权限(chmod)
- 脚本内容如下
#!/bin/sh
#suricata.log大于10G的文件
for i in $(find /var/log/suricata -name ""suriacata.log" -size +1024M)
do
#将查找到的所有文件循环置空并且不删除文件
echo '' > "$i"
done
- 创建定时任务
crontab -e #创建定时任务
0 */24 * * * /var/log/suricata/clearIDSlog.sh #每24h执行一次clearIDSlog.sh
systemctl restart crond.service #重启定时服务
4、技能补充
命令
# df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 8.6G 6.7G 1.5G 82% /
tmpfs 250M 76K 250M 1% /dev/shm
/dev/sda1 291M 33M 244M 12% /boot
/dev/sr0 1.5G 1.5G 0 100% /media/Ubuntu 16.04 LTS i386
解释:
Used:已经使用的空间
Avail:可以使用的空间
Mounted on:挂载的目录
关于挂载,就是Linux“一切皆文件”!
查看是否有定时任务:crontab -l
新增定时任务:cronteb -e
5、结论
完成以上操作,再也不会受到服务器硬盘空间不足的报警信息了。
本文仅作为个人日常记录,crond详细使用自行百度…