1. 程式人生 > >提取根分區磁盤占用率

提取根分區磁盤占用率

bash 信息保存 mon bst 成功 txt tar $1 -c

需求:

1、編寫sysmon.sh腳本
(1)使用df命令提取出根分區的磁盤占用率,賦值給變量DUG。
(2)使用mpstat命令提取CPU使用率(需安裝sysstat軟件包),賦值給變量CUG。
(3)使用free命令提取出內存使用率,賦值給變量MUG。
(4)判斷上述監控項目是否超標,將需要告警的信息保存到/tmp/alert.txt文件。
(5)判斷/tmp/alert.txt文件是否存在,若存在則作為告警郵件發送。

參考腳本:

#!/bin/bash
#腳本練習1

#第一步、使用df命令提取出根分區的磁盤占用率,賦值給變量DUG
DUG=`df -h |awk NR==2{print}|awk
{print $5}|awk -F % {print $1}` #第二步、使用mpstat命令提取CPU使用率(需安裝sysstat軟件包),賦值給變量CUG #(1)安裝sysstat yum install wget make gcc gcc-c++ glibc libstdc++-devel mailx -y wget http://pagesperso-orange.fr/sebastien.godard/sysstat-11.0.0.tar.gz tar -xvf sysstat-11.0.0.tar.gz cd sysstat-11.0.0/ ./configure make make install
mpstat -V #判斷sysstat軟件是否安裝成功 if [ $? = 0 ];then echo "恭喜你sysstat 軟件安裝成功!" else exit fi #(2)提取CPU使用率 CUG=`mpstat|grep all|awk {print $3}` #第三步、使用free命令提取出內存使用率,賦值給變量MUG MUG=`free -m|grep Mem|awk {print $3}` #第四步、判斷上述監控項目是否超標,將需要告警的信息保存到/tmp/alert.txt文件 #1.定義閾值 if [ $DUG > 80 ];then echo "
at `date`磁盤占用率已經達到${DUG}%,請及時清理" > /tmp/alert.txt elif [ $CUG > 50 ];then echo "at `date`CPU使用率達到${DUG}%,請及時查看" >> /tmp/alert.txt #第五步、判斷/tmp/alert.txt文件是否存在,若存在則作為告警郵件發送 if [ -e /tmp/alert.txt ];then mail -s 系統問題 1557034472@qq.com < /tmp/alert.txt echo ‘‘ >/tmp/alert.txt #清空告警文件 fi

提取根分區磁盤占用率