#!/bin/sh
|
#
|
# Copyright (C) 2022 LingYun IoT System Studio
|
# Author: Guo Wenxue<guowenxue@gmail.com>
|
#
|
# This shell script used to expand rootfs partition size to whole TF card space
|
#
|
|
set -e
|
set -u
|
|
# find the root partition information
|
ROOT_PART="$(mount | sed -n 's|^/dev/\(.*\) on / .*|\1|p')"
|
ROOT_DEV="/dev/$(lsblk -no pkname /dev/${ROOT_PART})"
|
PART_DEV="$(lsblk ${ROOT_DEV} | grep -w "\/" | grep mmcblk | awk '{print $1}' | cut -d- -f2)"
|
PART_NUM="$(echo ${PART_DEV} | cut -dp -f2)"
|
|
# Get the starting offset of the root partition
|
PART_START=$(fdisk -l $ROOT_DEV | grep $PART_DEV | awk '{print $2}')
|
[ "$PART_START" ] || return 1 ;
|
|
fdisk "$ROOT_DEV" > /dev/null 2>&1 <<EOF
|
p
|
d
|
$PART_NUM
|
n
|
p
|
$PART_NUM
|
$PART_START
|
|
p
|
w
|
EOF
|
|
resize2fs /dev/$ROOT_PART > /dev/null 2>&1
|
|
echo "Expand rootfs size successfully, it will be enlarged upon the next reboot."
|