summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorjesper <jesper@FreeBSD.org>2003-10-27 20:14:53 +0000
committerjesper <jesper@FreeBSD.org>2003-10-27 20:14:53 +0000
commit41ec55c865d11300c8d1b6847c05f1574582870e (patch)
tree6ae8e484e5dc3e15830c6b1292dd3e9fe63aebb3 /etc
parentbf1f504459b39b3f6246848a1fe738b25e808654 (diff)
downloadFreeBSD-src-41ec55c865d11300c8d1b6847c05f1574582870e.zip
FreeBSD-src-41ec55c865d11300c8d1b6847c05f1574582870e.tar.gz
Add status checking of ATA raid to the daily periodic scripts.
Diffstat (limited to 'etc')
-rw-r--r--etc/defaults/periodic.conf3
-rw-r--r--etc/periodic/daily/405.status-ata-raid33
-rw-r--r--etc/periodic/daily/Makefile1
3 files changed, 37 insertions, 0 deletions
diff --git a/etc/defaults/periodic.conf b/etc/defaults/periodic.conf
index bcb1c7f..f6e3fce 100644
--- a/etc/defaults/periodic.conf
+++ b/etc/defaults/periodic.conf
@@ -85,6 +85,9 @@ daily_news_expire_enable="YES" # Run news.expire
daily_status_disks_enable="YES" # Check disk status
daily_status_disks_df_flags="-k -t nonfs" # df(1) flags for check
+# 405.status-ata_raid
+status_ata_raid_enable="NO" # Check ATA raid status
+
# 420.status-network
daily_status_network_enable="YES" # Check network status
daily_status_network_usedns="YES" # DNS lookups are ok
diff --git a/etc/periodic/daily/405.status-ata-raid b/etc/periodic/daily/405.status-ata-raid
new file mode 100644
index 0000000..f217839
--- /dev/null
+++ b/etc/periodic/daily/405.status-ata-raid
@@ -0,0 +1,33 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# If there is a global system configuration file, suck it in.
+#
+if [ -r /etc/defaults/periodic.conf ]
+then
+ . /etc/defaults/periodic.conf
+ source_periodic_confs
+fi
+
+case "$daily_status_ata_raid_enable" in
+ [Yy][Ee][Ss])
+ echo
+ echo 'Checking status of ATA raid partitions:'
+
+ rc=0
+ for raid in `find /dev/ -name 'ar[0-9]*' -type c | egrep '[0-9]$' \
+ | egrep -v 's[0-9]' | cut -d / -f 3`
+ do
+ status=`/sbin/atacontrol status $raid`
+ echo $status
+ raid_rc=`echo $status | grep -v READY | wc -l`
+ [ $rc -eq 0 ] && [ $raid_rc -gt 0 ] && rc=3
+ done
+ ;;
+
+ *) rc=0;;
+esac
+
+exit $rc
diff --git a/etc/periodic/daily/Makefile b/etc/periodic/daily/Makefile
index 44f0c5c..04ea0e8 100644
--- a/etc/periodic/daily/Makefile
+++ b/etc/periodic/daily/Makefile
@@ -13,6 +13,7 @@ FILES= 100.clean-disks \
330.news \
400.status-disks \
420.status-network \
+ 405.status-ata-raid \
430.status-rwho \
440.status-mailq \
450.status-security \
OpenPOWER on IntegriCloud