清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
#!/bin/bash # 用途:监控远程主机的磁盘使用情况 LOG_FILE="disk_usage.log" if [[ -n $1 ]]; then LOG_FILE=$1 fi if [ ! -e $LOG_FILE ]; then printf "%-8s %-14s %-9s %-8s %-6s %-6s %-6s %-20s %s\n" \ "Date" "IP address" "Device" "Capacity" "Used" "Free" "Precent" "Mount" "Status" > $LOG_FILE fi IP_LIST="127.0.0.1 168.92.0.1" #监控主机IP地址列表 USER_NAME="test" #登入远程主机所用用户名 TEMP_FILE=/tmp/$$.df #临时文件 ALARM_THRESHOLD=80 #告警阀值,磁盘使用到达80则显示不安全 ( for IP in $IP_LIST; do if [ ! -f $TEMP_FILE ]; then touch $TEMP_FILE 2>/dev/null if [ $? -eq 0 ] then echo else echo "touch temp file failed!" exit 1 fi fi ssh $USER_NAME@$IP 'df -h' | grep ^/dev/ > $TEMP_FILE while read LINE; do CURRENT_DATE=$(date +%D); printf "%-8s %-14s " "$CURRENT_DATE" "$IP"; echo $LINE | awk '{printf(%-9s %-8s %-6s %-6s %-8s %-20s",$1, $2, $3, $4, $5, $6);}'; #标识磁盘状态,80%以下,显示SAFE,以上显示ALERT PUSG=$(echo $LINE | egrep -o "[0-9]+%"); PUSG=${PUSG/\%/}; if [ $PUSG -lt $ALARM_HTRESHOLD ]; then echo SAFE else echo ALERT fi done < $TEMP_FILE done ) >> $LOG_FILE