From e390070f9620a3e22da82111d3c4e10cf21642d4 Mon Sep 17 00:00:00 2001 From: netchild Date: Wed, 8 Jun 2011 11:36:06 +0000 Subject: [PATCH] MFC r221430: Use proper return codes (valuable output, invalid config, problems). git-svn-id: svn://svn.freebsd.org/base/stable/8@222857 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- etc/periodic/daily/800.scrub-zfs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/etc/periodic/daily/800.scrub-zfs b/etc/periodic/daily/800.scrub-zfs index de139c2f4..7ad99fe79 100755 --- a/etc/periodic/daily/800.scrub-zfs +++ b/etc/periodic/daily/800.scrub-zfs @@ -26,10 +26,12 @@ case "$daily_scrub_zfs_enable" in daily_scrub_zfs_pools="$(zpool list -H -o name)" fi + rc=0 for pool in ${daily_scrub_zfs_pools}; do # sanity check _status=$(zpool list "${pool}" 2> /dev/null) if [ $? -ne 0 ]; then + rc=2 echo " WARNING: pool '${pool}' specified in" echo " '/etc/periodic.conf:daily_scrub_zfs_pools'" echo " does not exist" @@ -38,13 +40,11 @@ case "$daily_scrub_zfs_enable" in _status=${_status##*$newline} case ${_status} in *FAULTED*) + rc=3 echo "Skipping faulted pool: ${pool}" continue ;; esac - # successful only if there is at least one pool to scrub - rc=0 - # determine how many days shall be between scrubs eval _pool_threshold=\${daily_scrub_zfs_${pool}_threshold} if [ -z "${_pool_threshold}" ];then @@ -77,10 +77,12 @@ case "$daily_scrub_zfs_enable" in *"none requested"*) echo " starting first scrub (since reboot) of pool '${pool}':" zpool scrub ${pool} + [ $rc -eq 0 ] && rc=1 ;; *) echo " starting scrub of pool '${pool}':" zpool scrub ${pool} + [ $rc -eq 0 ] && rc=1 ;; esac -- 2.45.0