]> code.delx.au - monosys/commitdiff
lib-ext-backup: exit with error if scrub failed
authorJames Bunton <jamesbunton@delx.net.au>
Tue, 1 Sep 2020 13:47:30 +0000 (23:47 +1000)
committerJames Bunton <jamesbunton@delx.net.au>
Tue, 1 Sep 2020 13:47:30 +0000 (23:47 +1000)
hacks/lib-ext-backup

index 4e727920f91ca2f79c0a4d9633fe27604ce07049..bca5e44f9733efed134c1f267e3684683422a35b 100644 (file)
@@ -48,7 +48,7 @@ function pool_export {
 }
 
 function pool_setup {
-    zpool set failmode=continue "$ZPOOLNAME"
+    zpool set failmode=wait "$ZPOOLNAME"
     zfs set mountpoint="/mnt/$ZPOOLNAME" "$ZPOOLNAME"
     chmod 0700 "/mnt/$ZPOOLNAME"
     zfs set compression=lz4 "$ZPOOLNAME"
@@ -74,7 +74,7 @@ function pool_maybe_scrub {
     echo "> zpool scrub $ZPOOLNAME"
     zpool scrub "$ZPOOLNAME"
 
-    while zpool status "$ZPOOLNAME" | grep -q "scrub in progress"; do
+    while zpool status "$ZPOOLNAME" | awk '/state: ONLINE|scan: scrub in progress/ {x++} END {exit x-2}'; do
         echo -n .
         sleep 60
     done