scripts/xymon/plugins/client/ext/smart

60 lines
1.3 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/sh
# NOTE: Must be run as root, so you probably need to setup sudo for this.
# Thanks to xymon.com https://www.xymon.com/xymon-cgi/viewconf.sh?smart
if test -f /tmp/dres; then rm -f /tmp/dres; fi
# MODIFY below to match your setup - the "scsi-SATA" is pretty generic, but you
# can add more disks if you like. E.g. I have a USB disk permanently plugged in.
ls /dev/disk/by-id/scsi-SATA_* /dev/disk/by-id/usb-WD* | grep -v -- -part | sort |
while read DISK
do
DRES=`/usr/sbin/smartctl -H -n standby $DISK`
DCODE=$?
DSTBY=$(( $DCODE & 2 ))
DFAIL=$(( $DCODE & 8 ))
DWARN=$(( $DCODE & 32 ))
if test $DSTBY -ne 0
then
COLOR="4&clear"
elif test $DFAIL -ne 0
then
COLOR="1&red"
elif test $DWARN -ne 0
then
COLOR="2&yellow"
else
COLOR="3&green"
fi
echo "${COLOR} $DISK"
echo "${COLOR} $DISK" | cut -c2- >>/tmp/dres
echo "" >>/tmp/dres
echo "$DRES" | egrep -v "^smartctl|^Copyright|^$|^===" >>/tmp/dres
echo "------------------------------------------------------------" >>/tmp/dres
echo "" >>/tmp/dres
echo "" >>/tmp/dres
done >/tmp/dcheck
COLOR=`cat /tmp/dcheck | awk '{print $1}' | sort | uniq | head -1 | cut -c3-`
$XYMON $XYMSRV "status ${MACHINE}.smart ${COLOR} SMART health check
`cat /tmp/dcheck | cut -c2-`
==================== Detailed status ====================
`cat /tmp/dres`
"
rm -f /tmp/dres /tmp/dcheck
exit 0