#!/bin/sh # # This script checks # # - RAID Status # - Drive Status # # on a 3ware 7006-2 ATA RAID Controller. # # returns 1 if RAID error was detected, 2 if DISK error was detected # # Marcus T. Jaschen < rikman (@) gmail > # 2006-02-03 # tw_cli binary location TWCLI=/usr/sbin/tw_cli # controller name CONTROLLER=c0 # get complete status STATUS_CONTROLLER=`$TWCLI /$CONTROLLER show` # check for RAID status STATUS_RAID=`echo "$STATUS_CONTROLLER" | grep "^u0" | awk '{ print $3; }'` [[ $STATUS_RAID != "OK" ]] && { STATUS_RAID="CRITICAL" exit 1 } # check for disk status STATUS_DISKS=`echo "$STATUS_CONTROLLER" | grep "^p[[:digit:]]" | awk '{ print $2; }'` [[ -z `echo "$STATUS_DISKS" | grep -v "^OK$"` ]] || { STATUS_RAID="CRITICAL" exit 2 } echo $STATUS_RAID exit 0