xref: /netbsd-src/distrib/utils/embedded/files/resize_gpt (revision 2e7e9cc4e844456c64fd33d3ec08cedf4e3a6d09)
121905166Sjmcneill#!/bin/sh
221905166Sjmcneill#
3*2e7e9cc4Sjmcneill# $NetBSD: resize_gpt,v 1.2 2020/05/24 18:43:39 jmcneill Exp $
421905166Sjmcneill#
521905166Sjmcneill
621905166Sjmcneill# PROVIDE: resize_gpt
721905166Sjmcneill# REQUIRE: fsck_root
821905166Sjmcneill# BEFORE: resize_root
921905166Sjmcneill
1021905166Sjmcneill$_rc_subr_loaded . /etc/rc.subr
1121905166Sjmcneill
1221905166Sjmcneillname="resize_gpt"
1321905166Sjmcneillrcvar=$name
1421905166Sjmcneillstart_cmd="resize_gpt_start"
1521905166Sjmcneillstop_cmd=":"
1621905166Sjmcneill
1721905166Sjmcneillresize_gpt_start()
1821905166Sjmcneill{
1921905166Sjmcneill	ROOT_DEVICE=$(sysctl -n kern.root_device)
2021905166Sjmcneill	case ${ROOT_DEVICE} in
2121905166Sjmcneill	dk*)
2221905166Sjmcneill		;;
2321905166Sjmcneill	*)
2421905166Sjmcneill		# Root device is not a wedge, bail out.
2521905166Sjmcneill		exit 0
2621905166Sjmcneill		;;
2721905166Sjmcneill	esac
2821905166Sjmcneill
2921905166Sjmcneill	BLOCK_DEVICE=$(dkctl ${ROOT_DEVICE} getwedgeinfo | head -1 | sed 's/://' | awk '{ print $3; }')
3021905166Sjmcneill
31*2e7e9cc4Sjmcneill	gpt -H resizedisk -q ${BLOCK_DEVICE}
32*2e7e9cc4Sjmcneill	gpt -H resize -a 4m -i 2 -q ${BLOCK_DEVICE}
3321905166Sjmcneill	return
3421905166Sjmcneill}
3521905166Sjmcneill
3621905166Sjmcneillload_rc_config $name
3721905166Sjmcneillrun_rc_command "$1"
38