use 'set -e'; fixed exit codes (negative numbers are invalid)
authorMatthias Förste <foerste@schlittermann.de>
Fri, 04 May 2012 13:10:26 +0200
changeset 7 bd12aa54868e
parent 6 12744a06a554
child 8 b917ead1b6ef
use 'set -e'; fixed exit codes (negative numbers are invalid)
snapfsck.sh
--- a/snapfsck.sh	Fri May 04 12:12:06 2012 +0200
+++ b/snapfsck.sh	Fri May 04 13:10:26 2012 +0200
@@ -1,5 +1,7 @@
 #!/bin/sh
 
+set -e
+
 SNAPSIZE='500M'
 
 warn() {
@@ -12,7 +14,7 @@
     else
 	echo something went wrong
     fi
-    exit -1
+    exit 1
 }
 
 usage() {
@@ -26,7 +28,7 @@
  $0 [-s snapsize] /dev/mapper/<vgname>-<lvname>
 __U
 
-exit -1
+exit 1
 
 }
 
@@ -51,9 +53,9 @@
 [ -n "${vg}" -a -n "${lv}" -a "${vg}" != "${p}" -a "${lv}" != "${p}" ] || usage
 
 d=$(date +%Y%m%d%H%M%S)
-lvcreate -n"$lvs" -L"$SNAPSIZE" -s "$vg/$lv" || die
+lvcreate -n"$lvs" -L"$SNAPSIZE" -s "$vg/$lv"
 if e2fsck -fp "/dev/$vg/$lvs"; then
-    tune2fs -C 1 -T "$d" "/dev/$vg/$lv" || die
+    tune2fs -C 1 -T "$d" "/dev/$vg/$lv"
     waittime=1 # second
     tries=60
     i=1
@@ -62,7 +64,7 @@
     # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549691#74
     # https://bugzilla.redhat.com/show_bug.cgi?id=577798#c5
     # https://www.redhat.com/archives/linux-lvm/2010-August/msg00029.html
-    lvremove -f "$vg/$lvs" || die
+    lvremove -f "$vg/$lvs"
 else
     die fsck returned nonzero: this may indicate filesystem corruption on the origin volume. The snapshot has not been removed.
 fi