diff options
author | pjd <pjd@FreeBSD.org> | 2007-04-06 02:33:06 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2007-04-06 02:33:06 +0000 |
commit | ba5bb48e56afb7eeb4ad591ec57eb8f08ee660e9 (patch) | |
tree | 42bab8ae76d2edf561bef6897be7ae9ecbd01eea /etc/periodic | |
parent | c88881a4e02be156c226e4a6f61fd04f3b5e42dd (diff) | |
download | FreeBSD-src-ba5bb48e56afb7eeb4ad591ec57eb8f08ee660e9.zip FreeBSD-src-ba5bb48e56afb7eeb4ad591ec57eb8f08ee660e9.tar.gz |
Add ZFS periodic scripts that monitors status of ZFS pools.
Submitted by: des
Diffstat (limited to 'etc/periodic')
-rw-r--r-- | etc/periodic/daily/404.status-zfs | 36 | ||||
-rw-r--r-- | etc/periodic/daily/Makefile | 1 |
2 files changed, 37 insertions, 0 deletions
diff --git a/etc/periodic/daily/404.status-zfs b/etc/periodic/daily/404.status-zfs new file mode 100644 index 0000000..81cc3e4 --- /dev/null +++ b/etc/periodic/daily/404.status-zfs @@ -0,0 +1,36 @@ +#!/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_zfs_enable" in + [Yy][Ee][Ss]) + echo + echo 'Checking status of zfs pools:' + + out=`zpool status -x` + echo "$out" + # zpool status -x always exits with 0, so we have to interpret its + # output to see what's going on. + if [ "$out" = "all pools are healthy" \ + -o "$out" = "no pools available" ]; then + rc=0 + else + rc=1 + fi + ;; + + *) + rc=0 + ;; +esac + +exit $rc diff --git a/etc/periodic/daily/Makefile b/etc/periodic/daily/Makefile index f356afa..cee90ff 100644 --- a/etc/periodic/daily/Makefile +++ b/etc/periodic/daily/Makefile @@ -12,6 +12,7 @@ FILES= 100.clean-disks \ 310.accounting \ 330.news \ 400.status-disks \ + 404.status-zfs \ 405.status-ata-raid \ 406.status-gmirror \ 407.status-graid3 \ |