我买了一个 NAS 盒子,上面有 debian 的精简版。
前几天它用完了空间,我没有意识到。我基本上是想编写一个 bash 脚本,它会在磁盘已满 90% 以上时提醒我。
有人知道可以执行此操作的脚本或给我一些编写脚本的建议吗?
最佳答案
#!/bin/bash
source /etc/profile
# Device to check
devname="/dev/sdb1"
let p=`df -k $devname | grep -v ^File | awk '{printf ("%i",$3*100 / $2); }'`
if [ $p -ge 90 ]
then
df -h $devname | mail -s "Low on space" my@email.com
fi
Crontab 这个运行,但是你想要一个警报的频率
编辑:对于多个磁盘
#!/bin/bash
source /etc/profile
# Devices to check
devnames="/dev/sdb1 /dev/sda1"
for devname in $devnames
do
let p=`df -k $devname | grep -v ^File | awk '{printf ("%i",$3*100 / $2); }'`
if [ $p -ge 90 ]
then
df -h $devname | mail -s "$devname is low on space" my@email.com
fi
done
关于linux - Bash 监控磁盘使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5648158/