[Grml-devel] [PATCH 2/2] Feature: if -F is given twice, run fsck with -f

Thomas Koehler jean-luc at picard.franken.de
Mon Jun 7 08:31:59 CEST 2010


---
 grml-crypt       |   11 +++++++++--
 grml-crypt.8.txt |    2 +-
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/grml-crypt b/grml-crypt
index 107fe7f..a205033 100755
--- a/grml-crypt
+++ b/grml-crypt
@@ -66,7 +66,7 @@ OPTIONS:
    -o         optimised initialisation mode (should be as secure as the default but faster)
    -y         verifies the passphrase by asking for it twice
    -f         force file overwriting in format mode and/or disable confirmation dialog
-   -F         only for action start: run fsck before mounting the filesystem
+   -F         only for action start: run fsck before mounting the filesystem. Use fsck's -f option if given twice.
    -m         additional arguments to mount
    -v         verbose (show what is going on, v++)
    -h         this help text
@@ -188,6 +188,8 @@ function actionStart
     die "could not luksOpen $TARGET_"
   if [[ "$FSCK_" == "true" ]] ; then
     execute "fsck -C $DM_PATH_" || die "fsck failed on $DM_PATH_"
+  elif [[ "$FSCK_" == "trueforce" ]] ; then
+    execute "fsck -f -C $DM_PATH_" || die "fsck failed on $DM_PATH_"
   fi
   margs_=""
   $READONLY_SET_ && margs_='-r'
@@ -351,7 +353,12 @@ while getopts "s:t:rzoyfFm:hvS:C:I:A:" opt; do
         OPTIMIZED_MODE_SET_='true' ;;
     y) VERIFY_PW_="--verify-passphrase" ;;
     f) FORCE_='true' ;;
-    F) FSCK_='true' ;;
+    F) if [[ "$FSCK_" == "true" ]] ; then
+         FSCK_='trueforce'
+       else
+         FSCK_='true'
+       fi
+      ;;
     m) ADDITIONAL_MOUNT_ARGS_="$OPTARG" ;;
     h) printUsage; exit ;;
     v) let verbose_=$verbose_+1 ;;
diff --git a/grml-crypt.8.txt b/grml-crypt.8.txt
index 07bb54e..1ff290d 100644
--- a/grml-crypt.8.txt
+++ b/grml-crypt.8.txt
@@ -82,7 +82,7 @@ Shows what is going on (more v => more out).
 
 *-F*::
     Only for action start: Run fsck on the filesystem before mounting it to
-    the given mountpoint.
+    the given mountpoint. If given twice, use fsck's -f option as well.
 
 *-m*::
     Additional arguments passed through to mount. Could be like "'-o noatime'".
-- 
1.5.6.5



More information about the Grml-devel mailing list