[Grml-devel] [PATCH] added -F option to run fsck before mounting a filesystem
Michael Prokop
mika at grml.org
Mon May 31 04:01:28 CEST 2010
Hi,
* Thomas Koehler <jean-luc at picard.franken.de> [Fri May 28, 2010 at 11:14:33AM +0200]:
> ---
> TODO | 1 -
> grml-crypt | 8 +++++++-
> grml-crypt.8.txt | 4 ++++
> 3 files changed, 11 insertions(+), 2 deletions(-)
> diff --git a/TODO b/TODO
> index db4e0cb..b6e8fde 100644
> --- a/TODO
> +++ b/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_=""
> diff --git a/grml-crypt b/grml-crypt
> index 0aef76d..fade32e 100755
> --- a/grml-crypt
> +++ b/grml-crypt
> @@ -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 ;;
> diff --git a/grml-crypt.8.txt b/grml-crypt.8.txt
> index 4fb3045..07bb54e 100644
> --- a/grml-crypt.8.txt
> +++ b/grml-crypt.8.txt
> @@ -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'".
ACK, looks fine for me and if Gebi doesn't object I'll apply it.
Thanks!
regards,
-mika-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://ml.grml.org/pipermail/grml-devel/attachments/20100531/d314d6f3/attachment.pgp>
More information about the Grml-devel
mailing list