Version 2.02.76 -
===================================
+ Modify fsadm to return different status code for check of mounted filesystem.
Update VG metadata only once in vgchange when making multiple changes.
Allow independent vgchange arguments to be used together.
Automatically unmount invalidated snapshots in dmeventd.
# reiserfs: resize_reiserfs, reiserfstune
# xfs: xfs_growfs, xfs_info
#
+# Return values:
+# 0 success
+# 1 error
+# 2 break detected
+# 3 unsupported online filesystem check for given mounted fs
TOOL=fsadm
IFS=$IFS_OLD
trap 2
+ test "$1" -eq 2 && verbose "Break detected"
+
if [ "$DO_LVRESIZE" -eq 2 ]; then
# start LVRESIZE with the filesystem modification flag
# and allow recursive call of fsadm
# if the size parameter is missing use device size
#if [ -n "$NEWSIZE" -a $NEWSIZE <
test -z "$NEWSIZE" && NEWSIZE=${DEVSIZE}b
- trap cleanup 2
IFS=$NL
case "$FSTYPE" in
"ext3"|"ext2"|"ext4") resize_ext $NEWSIZE ;;
###################
check() {
detect_fs "$1"
- detect_mounted && error "Cannot fsck device \"$VOLUME\", filesystem is mounted on $MOUNTED"
+ if detect_mounted ; then
+ verbose "Skipping filesystem check for device \"$VOLUME\" as the filesystem is mounted on $MOUNTED";
+ cleanup 3
+ fi
case "$FSTYPE" in
"xfs") dry $XFS_CHECK "$VOLUME" ;;
*) # check if executed from interactive shell environment
# start point of this script
# - parsing parameters
#############################
+trap "cleanup 2" 2
# test if we are not invoked recursively
test -n "$FSADM_RUNNING" && exit 0