1 1.1 jmcneill #!/bin/sh 2 1.1 jmcneill # 3 1.2 jmcneill # $NetBSD: resize_gpt,v 1.2 2020/05/24 18:43:39 jmcneill Exp $ 4 1.1 jmcneill # 5 1.1 jmcneill 6 1.1 jmcneill # PROVIDE: resize_gpt 7 1.1 jmcneill # REQUIRE: fsck_root 8 1.1 jmcneill # BEFORE: resize_root 9 1.1 jmcneill 10 1.1 jmcneill $_rc_subr_loaded . /etc/rc.subr 11 1.1 jmcneill 12 1.1 jmcneill name="resize_gpt" 13 1.1 jmcneill rcvar=$name 14 1.1 jmcneill start_cmd="resize_gpt_start" 15 1.1 jmcneill stop_cmd=":" 16 1.1 jmcneill 17 1.1 jmcneill resize_gpt_start() 18 1.1 jmcneill { 19 1.1 jmcneill ROOT_DEVICE=$(sysctl -n kern.root_device) 20 1.1 jmcneill case ${ROOT_DEVICE} in 21 1.1 jmcneill dk*) 22 1.1 jmcneill ;; 23 1.1 jmcneill *) 24 1.1 jmcneill # Root device is not a wedge, bail out. 25 1.1 jmcneill exit 0 26 1.1 jmcneill ;; 27 1.1 jmcneill esac 28 1.1 jmcneill 29 1.1 jmcneill BLOCK_DEVICE=$(dkctl ${ROOT_DEVICE} getwedgeinfo | head -1 | sed 's/://' | awk '{ print $3; }') 30 1.1 jmcneill 31 1.2 jmcneill gpt -H resizedisk -q ${BLOCK_DEVICE} 32 1.2 jmcneill gpt -H resize -a 4m -i 2 -q ${BLOCK_DEVICE} 33 1.1 jmcneill return 34 1.1 jmcneill } 35 1.1 jmcneill 36 1.1 jmcneill load_rc_config $name 37 1.1 jmcneill run_rc_command "$1" 38