diff options
-rwxr-xr-x | scripts/install-system | 11 | ||||
-rwxr-xr-x | scripts/install/install-get-partition | 17 |
2 files changed, 21 insertions, 7 deletions
diff --git a/scripts/install-system b/scripts/install-system index 4d712ee7..278e77dc 100755 --- a/scripts/install-system +++ b/scripts/install-system @@ -77,8 +77,8 @@ PARTITION='' # default file system type ROOT_FSTYPE="ext3" -# start of root partition (0% is magic to tell parted to align) -ROOT_OFFSET="0%" +# start of root partition (64 sectors == 32K bytes) +ROOT_OFFSET="64S" # Process ID of this script for the lame marketing spinner SPID=$$ @@ -1267,6 +1267,13 @@ setup_method_auto() { while [ $ROOT_MIN -gt $ROOT_PARTITION_SIZE ]; do # Get the size of the drive size=$(get_drive_size $INSTALL_DRIVE) + + # If drive is big, leave more space 512K bytes (1024 sectors) + # this is better for SSD + if (( $size > 10000 )); then + ROOT_OFFSET="1024S" + fi + echo -n "How big of a root partition should I create? ($ROOT_MIN"MB" - $size"MB") [$size]MB: " response=$(get_response "$size") # TODO: need to have better error checking on this value diff --git a/scripts/install/install-get-partition b/scripts/install/install-get-partition index debb2eaa..b15092a6 100755 --- a/scripts/install/install-get-partition +++ b/scripts/install/install-get-partition @@ -34,8 +34,8 @@ PARTITION='' # default file system type ROOT_FSTYPE='ext3' -# start of root partition (0% is magic to tell parted to align) -ROOT_OFFSET="0%" +# default start of root partition +ROOT_OFFSET="64S" warn_of_dire_consequences () { # Give the user a requisite warning that we are about to nuke their drive @@ -713,11 +713,18 @@ create_partitions() { fi } -# sets ROOT_FSTYPE based on disk size +# adjust root filesystem based on disk size set_root_fstype () { local drv=$1 - # always use ext3 for stability - ROOT_FSTYPE=ext3 + local sz=$(get_drive_size "$drv") + + # if disk is small, then don't waste space aligning + # otherwise align on 512K boundary for SSD etc + if (( $sz < 10000 )); then + ROOT_OFFSET="64S" + else + ROOT_OFFSET="1024S" + fi } # ask for user input on the parted and skip setup methods |