Permalink
Browse files

added -F option to run fsck before mounting a filesystem

  • Loading branch information...
1 parent f871c7c commit 927bbefa8782ae7d31084a089e084720423ec9fa Thomas Koehler committed with mika May 28, 2010
Showing with 11 additions and 2 deletions.
  1. +0 −1 TODO
  2. +7 −1 grml-crypt
  3. +4 −0 grml-crypt.8.txt
View
1 TODO
@@ -1,7 +1,6 @@
- better cipher choosing (xts,essiv,plain)
- rename?
- add optimized ext3 fs profile for crypto (deactivated journal, activated dir_index and filetype)
- - add --fsck for start (execute "sleep 3 && fsck -C $DM_PATH_" || die "fsck failed on $DM_PATH_") (request thokoeh)
Cleanup:
hook_pre_initialize_=""
View
@@ -35,6 +35,7 @@ DM_PATH_=""
ACTION_=""
DM_PREFIX_="grml-crypt_"
FORCE_='false'
+FSCK_='false'
ENTROPY_SOURCE_='/dev/urandom'
OPTIMIZED_MODE_SET_='false'
OPTIMIZING_LEVEL_=0
@@ -65,6 +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
-m additional arguments to mount
-v verbose (show what is going on, v++)
-h this help text
@@ -184,6 +186,9 @@ function actionStart
$READONLY_SET_ && cargs_='--readonly'
execute "$CRYPTSETUP_ $cargs_ luksOpen $TARGET_ $DM_NAME_" warn || execute "losetup -d $TARGET_" || \
die "could not luksOpen $TARGET_"
+ if [[ "$FSCK_" == "true" ]] ; then
+ execute "fsck -C $DM_NAME_" || die "fsck failed on $DM_NAME_"
+ fi
margs_=""
$READONLY_SET_ && margs_='-r'
execute "mount $margs_ $ADDITIONAL_MOUNT_ARGS_ $DM_PATH_ $MOUNT_POINT_" die
@@ -334,7 +339,7 @@ function actionFormat
### __MAIN
###
-while getopts "s:t:rzoyfm:hvS:C:I:A:" opt; do
+while getopts "s:t:rzoyfFm:hvS:C:I:A:" opt; do
case "$opt" in
s) SIZE_="$OPTARG"; SIZE_SET_='true' ;;
t) FSTYPE_="$OPTARG" ;;
@@ -346,6 +351,7 @@ while getopts "s:t:rzoyfm:hvS:C:I:A:" opt; do
OPTIMIZED_MODE_SET_='true' ;;
y) VERIFY_PW_="--verify-passphrase" ;;
f) FORCE_='true' ;;
+ F) FSCK_='true' ;;
m) ADDITIONAL_MOUNT_ARGS_="$OPTARG" ;;
h) printUsage; exit ;;
v) let verbose_=$verbose_+1 ;;
View
@@ -80,6 +80,10 @@ Shows what is going on (more v => more out).
be bigger than 2MB for LUKS only + the constraints from the filesystems
itself (eg. xfs needs a minimum of 4096 blocks).
+*-F*::
+ Only for action start: Run fsck on the filesystem before mounting it to
+ the given mountpoint.
+
*-m*::
Additional arguments passed through to mount. Could be like "'-o noatime'".

0 comments on commit 927bbef

Please sign in to comment.