File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / smartmontools / examplescripts / Example1
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 16:32:16 2012 UTC (12 years, 8 months ago) by misho
Branches: smartmontools, elwix, MAIN
CVS tags: v6_2, v6_1p0, v6_1, v5_43, v5_42, HEAD
smartmontools

#!/bin/bash 
#
# This is a script from the smartmontools examplescripts/ directory.
# It can be used as an argument to the -M exec Directive in
# /etc/smartd.conf, in a line like 
# -m root@localhost -M exec /path/to/this/file
#
# Please see man 8 smartd or man 5 smartd.conf for further
# information.
#
# $Id: Example1,v 1.1.1.1 2012/02/21 16:32:16 misho Exp $

# Save standard input into a temp file
cat > /root/tempfile

# Echo command line arguments into temp file
echo "Command line argument 1:" >> /root/tempfile
echo $1 >> /root/tempfile
echo "Command line argument 2:" >> /root/tempfile
echo $2 >> /root/tempfile
echo "Command line argument 3:" >> /root/tempfile
echo $3 >> /root/tempfile

# Echo environment variables into a temp file
echo "Variables are":       >> /root/tempfile
echo "$SMARTD_DEVICE"       >> /root/tempfile
echo "$SMARTD_DEVICESTRING" >> /root/tempfile
echo "$SMARTD_DEVICETYPE"   >> /root/tempfile
echo "$SMARTD_MESSAGE"      >> /root/tempfile
echo "$SMARTD_FULLMESSAGE"  >> /root/tempfile
echo "$SMARTD_ADDRESS"      >> /root/tempfile
echo "$SMARTD_SUBJECT"      >> /root/tempfile
echo "$SMARTD_TFIRST"       >> /root/tempfile
echo "$SMARTD_TFIRSTEPOCH"  >> /root/tempfile

# Run smartctl -a and save output in temp file
/usr/sbin/smartctl -a -d $SMARTD_DEVICETYPE $SMARTD_DEVICE >> /root/tempfile

# Email the contents of the temp file. Solaris and other OSes
# may need to use /bin/mailx not /bin/mail.
/bin/mail -s "SMART errors detected on host: `hostname`" $SMARTD_ADDRESS < /root/tempfile

# And exit
exit 0

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>