加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

监控远程主机磁盘使用情况

发布时间:2020-12-15 07:06:44 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/bin/bash# 用途:监控远程主机的磁盘使用情况LOG_FILE="disk_usage.log"if [[ -n $1 ]];thenLOG_FILE=$1fiif [ ! -e $LOG_FILE ];thenprintf "%-8s

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

#!/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 %sn" 
	"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 [email?protected]$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

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读