使用 shell 脚本监控 Linux 主机
发布时间:2020-12-16 01:53:59 所属栏目:安全 来源:网络整理
导读:编写以下脚本命令: [[email?protected] sh]# vim sysmon.sh #!/bin/bash#提取性能监控指标(磁盘占用、CPU使用、内存使用)DUG=$(df -h | grep "/$" | awk ‘{print $5}‘ | awk -F% ‘{print $1}‘)CUG=$(expr 100 - $(mpstat | tail -1 | awk ‘{print $1
编写以下脚本命令:
[[email?protected] sh]# vim sysmon.sh #!/bin/bash #提取性能监控指标(磁盘占用、CPU使用、内存使用) DUG=$(df -h | grep "/$" | awk ‘{print $5}‘ | awk -F% ‘{print $1}‘) CUG=$(expr 100 - $(mpstat | tail -1 | awk ‘{print $12}‘ | awk -F. ‘{print $1}‘)) MUG=$(expr $(free | grep "Mem:" | awk ‘{print $3}‘) * 100 / $(free | grep "Mem:" | awk ‘{print $2}‘)) #设置告警日志文件、告警邮箱 ALOG="/tmp/alert.txt" # 日志文件的变量 AMAIL="root" # 发送到邮箱的变量 #判断是否记录告警 if [ $DUG -gt 80 ] then echo "磁盘占用率:$DUG %" >> $ALOG fi if [ $CUG -gt 70 ] then echo "CPU使用率:$CUG %" >> $ALOG fi if [ $MUG -gt 80 ] then echo "内存使用率:$MUG %" >> $ALOG fi #判断是否发送告警邮件,最后删除告警日志文件 if [ -f $ALOG ] then cat $ALOG | mail -s "Host Alert" $AMAIL rm -rf $ALOG fi 然后查看 crond 系统服务状态,确保已经运行: [[email?protected] /]# systemctl status crond.service ● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2019-08-09 17:06:26 CST; 36min ago Main PID: 1073 (crond) CGroup: /system.slice/crond.service └─1073 /usr/sbin/crond -n 确认之后 编写任务计划: [[email?protected] /]# crontab -e */30 * * * * /sh/sys.sh [[email?protected] /]# crontab -l */30 * * * * /sh/sys.sh (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |