bootstrap-vz/bootstrapvz/common/assets/init.d/expand-root

44 lines
1.3 KiB
Bash

#!/bin/bash
### BEGIN INIT INFO
# Provides: expand-root
# Required-Start:
# Required-Stop:
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Description-Short: Expand the filesystem of the mounted root volume/partition to its maximum possible size
# Description: Expand the filesystem of the mounted root volume/partition to its maximum possible size
# This file was created by bootstrap-vz.
# See https://github.com/andsens/bootstrap-vz/blob/master/LICENSE for
# legal notices and disclaimers.
### END INIT INFO
prog=$(basename $0)
logger="logger -t $prog"
growpart="growpart"
hash $growpart 2> /dev/null || {
$logger "$growpart was not found on PATH. Unable to expand size."
exit 1
}
root_device_path="/dev/xvda"
root_index="0"
# Growpart can fail if the partition is already resized.
$growpart $root_device_path $root_index || {
$logger "growpart failed. Unable to expand size."
}
device_path="${root_device_path}${root_index}"
filesystem=$(blkid -s TYPE -o value ${device_path})
case $filesystem in
xfs) xfs_growfs / ;;
ext2) resize2fs $device_path ;;
ext3) resize2fs $device_path ;;
ext4) resize2fs $device_path ;;
*) $logger "The filesystem $filesystem was not recognized. Unable to expand size." ;;
esac