通过shell脚本检查磁盘使用率

!/bin/bash

主机列表:可以是 IP 地址或主机名

HOSTS=("10.64.1.35" "10.64.1.37" "10.64.1.38" "10.64.1.33" "10.64.1.39" "10.64.1.44" "10.64.1.34" "10.64.1.135") # 替换为你的实际主机名或 IP 地址

SSH 用户名

USER="root" # 替换为你的 SSH 用户名

主机的密码列表,按主机顺序填写

PASSWORDS=("密码" "密码" ...) # 每台主机的密码

存储报告的文件

OUTPUT_FILE="disk_usage_report.txt"

$OUTPUT_FILE # 清空旧报告文件

循环遍历每台主机

for i in "${!HOSTS[@]}"; do
HOST="${HOSTS[$i]}"
PASSWORD="${PASSWORDS[$i]}"

echo "Checking disk usage for $HOST..." >> $OUTPUT_FILE

# 使用 sshpass 提供密码进行 SSH 登录并执行 df 命令,筛选出使用率超过 80% 的目录
sshpass -p "$PASSWORD" ssh -o StrictHostKeyChecking=no $USER@$HOST "df -h --output=source,pcent,target" | \
grep -E '([8-9][0-9]|100)%' | while read line; do
    echo "$HOST - $line" >> $OUTPUT_FILE
done

echo "-----------------------------" >> $OUTPUT_FILE

done

打印报告内容

cat $OUTPUT_FILE

posted @ 2025-11-20 17:51  小蓝莓  阅读(10)  评论(0)    收藏  举报