From 540cd528321e59bdea28c064e705cb6428e953fe Mon Sep 17 00:00:00 2001 From: Phuong Vu Date: Fri, 25 Mar 2022 07:05:41 +0700 Subject: [PATCH] Fixed a bug when target size is larger or equal to current size. --- pishrink.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pishrink.sh b/pishrink.sh index 1b4671b..0a7d278 100755 --- a/pishrink.sh +++ b/pishrink.sh @@ -363,8 +363,14 @@ if [[ $currentsize -eq $minsize ]]; then fi #Add some free space to the end of the filesystem -minsize=$(($minsize + $extraspace * 1024**2 / $blocksize)) -logVariables $LINENO minsize +targetsize=$(($minsize + $extraspace * 1024**2 / $blocksize)) +if [ $targetsize -ge $currentsize ]; then + info "Target size ($targetsize) too large, force to current size minus 1" + let minsize=$currentsize-1 +else + minsize=$targetsize +fi +logVariables $LINENO targetsize currentsize minsize #Shrink filesystem info "Shrinking filesystem"