linux檢測磁盤空間腳本


環境:centos7

1、先獲取磁盤空間大小

[root@demod ~]#df -h|grep sda1|awk '{print $5}'|awk -F \% '{print $1}'
14

2、將值賦予給一個變量進行值判斷,發送信息

#!/bin/bash
source /etc/profile                                                          #做成定時任務依賴一些環境變量,先執行一下
g=`df -h|grep sda1|awk '{print $5}'|awk -F \% '{print $1}'`                  #獲取磁盤空間使用數量
if ((g > 20));                                                               #與指定標准進行比對這兒配置的是20 ,可以自己定表准
      then                                   
        a_phon=("18381008111" "18524515151")                                 #定義數組內部為發送短信的電話號碼    
        for element in ${a_phon[@]}                                          #獲取值    
             do
                 curl -X POST 'http://ip/dxts' -d "phone=$element&contentent='xx服務器磁盤空間超標了'"   #通過短信api接口發送信息給相關人員
             done
        else
           echo 'good'                                                       #沒有超標就直接執行這句
fi

3、郵件方式

#!/bin/bash
source /etc/profile >/dev/null
for i in {2..6}
  do
     ssh root@192.168.1.$i 'df -h /' > /tmp/full
     s=`cat /tmp/full|grep /|awk '{print $5}'|awk -F \% '{print $1}'`
     echo $i-$s
    if ((s > 80));
      then
        a_name=("mail@qq.com" )
        for element in ${a_name[@]}
          do
            echo $i的磁盤空間達到$s|mail -v -s "磁盤根目錄空間告警" $element
           done
       else
        echo "$i成功"
      fi
   done

4、配置定時任務

1 9 * * * /tmp/tj.sh               #每天9點1分檢查一次

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM