#!/bin/sh
#
# Cron script (Created by Matthijs Mohlmann)

[ -r /etc/raidtab ] || exit 0

[ -e /proc/mdstat ] || exit 0

RAIDDEV=$(awk '/^[[:blank:]]*raiddev/ {print " " $2}' /etc/raidtab)

# Check for failed disks or spare disks that are in use.
for i in $RAIDDEV; do
  FAULTY=`lsraid -A -f -a $i | awk '/failed/ {print $4}'`
  if [ ! -z "$FAULTY" ]; then
    echo "WARNING: Some disk(s) in your RAID array(s) seems to have failed!"
    echo "Array $i have failed disk(s): $FAULTY"
    echo "Below is the content of /proc/mdstat: "
    echo "";
    cat /proc/mdstat
  else
    SPLIT=`echo '$i' | awk -F '/' '{print $3}'`
    SPARE=`cat /proc/mdstat | grep ^$SPLIT | awk '/\(F\)/'`
    if [ ! -z "$SPARE" ]; then
      echo "WARNING: There is probably a spare disk in use!"
      echo "Array $i has a spare disk in use"
    fi
  fi
done

