监控多台服务器磁盘利用率脚本

该bash脚本读取host.info文件中的IP地址、用户名和端口信息,通过SSH连接到远程服务器,获取磁盘使用率。如果磁盘分区使用率超过80%,它会发送邮件警告,提示服务器磁盘空间可能不足。
摘要由CSDN通过智能技术生成

#!/bin/bash

HOST_INFO=host.info

for IP in $(awk '/^[^#]/{print $1}' $HOST_INFO); do

#取出用户名和端口

USER=$(awk -v ip=$IP 'ip==$1{print $2}' $HOST_INFO)

PORT=$(awk -v ip=$IP 'ip==$1{print $3}' $HOST_INFO)

#创建临时文件,保存信息

TMP_FILE=/tmp/disk.tmp

#通过公钥登录获取主机磁盘信息

ssh -p $PORT $USER@$IP 'df -h' > $TMP_FILE

#分析磁盘占用空间

USE_RATE_LIST=$(awk 'BEGIN{OFS="="}/^\/dev/{print $NF,int($5)}' $TMP_FILE)

#循环磁盘列表,进行判断

for USE_RATE in $USE_RATE_LIST; do

#取出等号(=)右边的值 挂载点名称

PART_NAME=${USE_RATE%=*}

#取出等号(=)左边的值 磁盘利用率

USE_RATE=${USE_RATE#*=}

#进行判断

if [ $USE_RATE -ge 80 ]; then

echo "Warning: $PART_NAME Partition usage $USE_RATE%!"

echo "服务器$IP的磁盘空间占用过高,请及时处理" | mail -s "空间不足警告" 你的qq@qq.com

else

echo "服务器$IP的$PART_NAME目录空间良好"

fi

done

done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值