#!/bin/sh D_TEST=/usr/local/sbin/disk-test D_LOGDIR=/var/log/diskwatch MAIL_TO="root" [ -x ${D_TEST} ] || { echo "ERROR: cannot execute ${D_TEST}" >&2 ; exit 1 ; } [ -d ${D_LOGDIR} ] || \ mkdir -p ${D_LOGDIR} || \ { echo "ERROR: cannot create ${D_LOGDIR}" >&2 ; exit 1 ; } cd ${D_LOGDIR} || { echo "ERROR: cannot cd ${D_LOGDIR}" >&2 ; exit 1 ; } rm -f previous [ -L latest ] && mv latest previous NOW=$(date "+%F-%T") ${D_TEST} >${NOW} ln -s "${NOW}" latest DIFF='' [ -r previous ] && DIFF=$(diff -u previous latest) [ -z "${DIFF}" ] && exit 0 mailx -s "$(hostname): SMART DISK WARNING" ${MAIL_TO} <<+++ Disk status change: ${DIFF} Recent results: $(cat latest) +++