Almost finished Övning 5, labb 6 (Disk usage)
This commit is contained in:
parent
28ca89171e
commit
64817f5b81
@ -1,10 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
for i in `df -h | awk '/\/dev\/sd*/ { print $1 }'`; do
|
||||
Disk[$Nr]=$i
|
||||
# Jack-Benny Persson
|
||||
# LX13
|
||||
# Övning 5, labb 6
|
||||
# Monitor disk usage and send a warning if it exceeds N%
|
||||
|
||||
# Set some variables
|
||||
Df="/bin/df"
|
||||
Awk="/usr/bin/awk"
|
||||
Sed="/bin/sed"
|
||||
Warn=80 # Warn a how many percent full?
|
||||
|
||||
# Sanity checks
|
||||
for bin in $Df $Awk $Sed; do
|
||||
if [ ! -x $bin ]; then
|
||||
echo "Can't execute $bin"
|
||||
exit 2
|
||||
fi
|
||||
done
|
||||
|
||||
# Get the disks
|
||||
for dev in `df -h | awk '/\/dev\/sd*/ { print $1 }'`; do
|
||||
Disk[$Nr]=$dev
|
||||
((Nr++))
|
||||
done
|
||||
|
||||
echo ${Disk[@]}
|
||||
# Get the usage percentage
|
||||
for percent in `df -h | awk '/\/dev\/sd*/ { print $5 }' | sed 's/%//'`; do
|
||||
Use[$UseNr]=$percent
|
||||
((UseNr++))
|
||||
done
|
||||
|
||||
|
||||
# Main (Calculate usage and send warnings)
|
||||
DiskDev=0
|
||||
for i in ${Use[@]}; do
|
||||
if [ $i -gt $Warn ]; then
|
||||
echo "Disk ${Disk[$DiskDev]} is ${Use[$DiskDev]}% full"
|
||||
logger "Disk ${Disk[$DiskDev]} is ${Use[$DiskDev]}% full"
|
||||
((DiskDev++))
|
||||
fi
|
||||
done
|
||||
|
||||
# Just exit in quiet if no warnings are issued
|
||||
exit 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user