From a5ce81eec824756e4d9efdadcc6f4cb4b8964b07 Mon Sep 17 00:00:00 2001 From: cyteen Date: Fri, 7 Jun 2024 16:31:01 +0100 Subject: [PATCH] Typo and change bashism to $() --- test-partitioning_sgdisk_ayufan.sh | 76 ++++++++++++++---------------- 1 file changed, 36 insertions(+), 40 deletions(-) diff --git a/test-partitioning_sgdisk_ayufan.sh b/test-partitioning_sgdisk_ayufan.sh index e665e2c..0bc7ff5 100644 --- a/test-partitioning_sgdisk_ayufan.sh +++ b/test-partitioning_sgdisk_ayufan.sh @@ -3,7 +3,7 @@ set -ex DISK_NAME=${PWD}/decode-sgdisk.img # cleanup touch $DISK_NAME -rm "${}DISK_NAME}" +rm "${DISK_NAME}" # Partition sizes in MiB IDBLOADER_SIZE=4 @@ -13,33 +13,32 @@ BOOT_SIZE=16 ROOT_SIZE=128 # Define max sizes and offsets -IDBLOADER_START=64 # was 64 but report it is not aligned, 2048, which is 1MB alignment. -IDBLOADER_OFFSET=$((${IDBLOADER_SIZE}*1024*1024/512)) # 8192 4MiB 8192 -UBOOT_OFFSET=$((${UBOOT_SIZE}*1024*1024/512)) # 16382 8MiB 16384 -TRUST_OFFSET=$((${TRUST_SIZE}*1024*1024/512)) # 24575 12MiB 24575 -BOOT_OFFSET=$((${BOOT_SIZE}*1024*1024/512)) # 32768 16MiB 32768 -ROOT_OFFSET=$((${ROOT_SIZE}*1024*1024/512)) # 524288 128MiB 262144 +IDBLOADER_START=64 # was 64 but report it is not aligned, 2048, which is 1MB alignment. +IDBLOADER_OFFSET=$((${IDBLOADER_SIZE} * 1024 * 1024 / 512)) # 8192 4MiB 8192 +UBOOT_OFFSET=$((${UBOOT_SIZE} * 1024 * 1024 / 512)) # 16382 8MiB 16384 +TRUST_OFFSET=$((${TRUST_SIZE} * 1024 * 1024 / 512)) # 24575 12MiB 24575 +BOOT_OFFSET=$((${BOOT_SIZE} * 1024 * 1024 / 512)) # 32768 16MiB 32768 +ROOT_OFFSET=$((${ROOT_SIZE} * 1024 * 1024 / 512)) # 524288 128MiB 262144 -MIN_SIZE=$((500*1000*1000/512)) # 976562 500MiB -SIZE_STEP=$((100*1000*1000/512)) # 195312 100MiB -MAX_SIZE=$((8*1000*1000*1000/512)) # 15625000 8GiB +MIN_SIZE=$((500 * 1000 * 1000 / 512)) # 976562 500MiB +SIZE_STEP=$((100 * 1000 * 1000 / 512)) # 195312 100MiB +MAX_SIZE=$((8 * 1000 * 1000 * 1000 / 512)) # 15625000 8GiB # Create rm -f "$DISK_NAME" -truncate --size "$((MAX_SIZE*512))" "$DISK_NAME" +truncate --size "$((MAX_SIZE * 512))" "$DISK_NAME" bootfs="fat32" rootfs="ext2" -alignment_type="optimal" # none, cylinder, minimal, optimal +alignment_type="optimal" # none, cylinder, minimal, optimal - -gpt_loader1=(64 8063) # name:loader1 type=Linux data 8300 label="" -gpt_reserved1=(8064 8191) # name:reserved1 type=Linux data 8300 label="" -gpt_reserved2=(8192 16383) # name:reserved2 type=Linux data 8300 label="" -gpt_loader2=(16384 24575) # name:reserved2 type=Linux data 8300 label="" -gpt_atf=(24576 32767) # name:atf type=Linux data 8300 label="" -gpt_boot=(32768 262143) # name:boot type=Basic data 0700 label="boot" Attr=msftdata -gpt_root=(262144) # name:root type=Linux data 8300 label="linux-root" Attr=legacy-boot=1 # NB change to type=Linux ARM64 root 8305 +gpt_loader1=(64 8063) # name:loader1 type=Linux data 8300 label="" +gpt_reserved1=(8064 8191) # name:reserved1 type=Linux data 8300 label="" +gpt_reserved2=(8192 16383) # name:reserved2 type=Linux data 8300 label="" +gpt_loader2=(16384 24575) # name:reserved2 type=Linux data 8300 label="" +gpt_atf=(24576 32767) # name:atf type=Linux data 8300 label="" +gpt_boot=(32768 262143) # name:boot type=Basic data 0700 label="boot" Attr=msftdata +gpt_root=(262144) # name:root type=Linux data 8300 label="linux-root" Attr=legacy-boot=1 # NB change to type=Linux ARM64 root 8305 gpt_loader1_size=4 gpt_reserved1_size=64 # in k @@ -57,7 +56,7 @@ TARGET=${DISK_NAME} partition_loader1() { ## Partition 1 - Create partition using start and end values for partitioning the `loader1` partition. - #STARTSECTOR=`/sbin/sgdisk --first-aligned-in-largest ${TARGET}|sed -sn 2p` + # STARTSECTOR=$(/sbin/sgdisk --first-aligned-in-largest ${TARGET}|sed -sn 2p) STARTSECTOR=${gpt_loader[1]} /sbin/sgdisk --print --set-alignment=64 --mbrtogpt --new=1:${STARTSECTOR}:+${gpt_loader1_size}MB ${TARGET} /sbin/sgdisk --print --change-name=1:"loader1" --typecode=1:8300 ${TARGET} @@ -65,45 +64,45 @@ partition_loader1() { partition_reserved1() { ## Partition 2 - Create partition using start and end values for partitioning the `reserved1` partition. - #ENDSECTOR=`/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p` - #/sbin/sgdisk --print --new=2:-${gpt_reserved1_size}KB:${ENDSECTOR} ${TARGET} - STARTSECTOR=`/sbin/sgdisk --first-in-largest ${TARGET}|sed -sn 2p` + # ENDSECTOR=$(/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p) + # /sbin/sgdisk --print --new=2:-${gpt_reserved1_size}KB:${ENDSECTOR} ${TARGET} + STARTSECTOR=$(/sbin/sgdisk --first-in-largest ${TARGET} | sed -sn 2p) /sbin/sgdisk --print --new=2:${STARTSECTOR}:+${gpt_reserved1_size}KB ${TARGET} /sbin/sgdisk --print --change-name=2:"reserved1" --typecode=2:8300 ${TARGET} } partition_reserved2() { ## Partition 3 - Create partition using start and end values for partitioning the `reserved2` partition. - #ENDSECTOR=`/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p` - #/sbin/sgdisk --print --new=3:-${gpt_reserved1_size}MB:${ENDSECTOR} ${TARGET} - STARTSECTOR=`/sbin/sgdisk --first-in-largest ${TARGET}|sed -sn 2p` + # ENDSECTOR=$(/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p) + # /sbin/sgdisk --print --new=3:-${gpt_reserved1_size}MB:${ENDSECTOR} ${TARGET} + STARTSECTOR=$(/sbin/sgdisk --first-in-largest ${TARGET} | sed -sn 2p) /sbin/sgdisk --print --new=3:${STARTSECTOR}:+${gpt_reserved2_size}MB ${TARGET} /sbin/sgdisk --print --change-name=3:"reserved2" --typecode=3:8300 ${TARGET} } partition_loader2() { ## Partition 4 - Create partition using start and end values for partitioning the `loader2` partition. - #ENDSECTOR=`/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p` - #/sbin/sgdisk --print --new=4:-${gpt_loader2_size}MB:${ENDSECTOR} ${TARGET} - STARTSECTOR=`/sbin/sgdisk --first-in-largest ${TARGET}|sed -sn 2p` + # ENDSECTOR=$(/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p) + # /sbin/sgdisk --print --new=4:-${gpt_loader2_size}MB:${ENDSECTOR} ${TARGET} + STARTSECTOR=$(/sbin/sgdisk --first-in-largest ${TARGET} | sed -sn 2p) /sbin/sgdisk --print --new=4:${STARTSECTOR}:+${gpt_loader2_size}MB ${TARGET} /sbin/sgdisk --print --change-name=4:"loader2" --typecode=4:8300 ${TARGET} } partition_atf() { ## Partition 5 - Create partition using start and end values for partitioning the `atf` partition. - #ENDSECTOR=`/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p` - #/sbin/sgdisk --print --new=4:-${gpt_atf_size}MB:${ENDSECTOR} ${TARGET} - STARTSECTOR=`/sbin/sgdisk --first-in-largest ${TARGET}|sed -sn 2p` + # ENDSECTOR=$(/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p) + # /sbin/sgdisk --print --new=4:-${gpt_atf_size}MB:${ENDSECTOR} ${TARGET} + STARTSECTOR=$(/sbin/sgdisk --first-in-largest ${TARGET} | sed -sn 2p) /sbin/sgdisk --print --new=5:${STARTSECTOR}:+${gpt_atf_size}MB ${TARGET} /sbin/sgdisk --print --change-name=5:"atf" --typecode=5:8300 ${TARGET} } partition_boot() { ## Partition 6 - the 112MB partition for boot - #ENDSECTOR=`/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p` - #/sbin/sgdisk --print --new=6:-${gpt_boot_size}MB:${ENDSECTOR} ${TARGET} - STARTSECTOR=`/sbin/sgdisk --first-in-largest ${TARGET}|sed -sn 2p` + # ENDSECTOR=$(/sbin/sgdisk --end-of-largest ${TARGET}|sed -sn 2p) + # /sbin/sgdisk --print --new=6:-${gpt_boot_size}MB:${ENDSECTOR} ${TARGET} + STARTSECTOR=$(/sbin/sgdisk --first-in-largest ${TARGET} | sed -sn 2p) /sbin/sgdisk --print --new=6:${STARTSECTOR}:+${gpt_boot_size}MB ${TARGET} /sbin/sgdisk --print --change-name=6:"boot" --typecode=6:EF00 ${TARGET} } @@ -120,13 +119,11 @@ image_format_partitions() { tune2fs -o journal_data_writeback "${loopdevice}p7" } - loop_it() { loopdevice=$(sudo losetup -f --show $DISK_NAME) - echo "Loop device is: " $loopdevice + echo "Loop device is: " $loopdevice sudo partx -av $loopdevice || zerr - loader1="${loopdevice}p1" reserved1="${loopdevice}p2" reserved2="${loopdevice}p3" @@ -149,7 +146,6 @@ partition_boot partition_root loop_it - #/sbin/sgdisk -print ${TARGET} cgpt show ${TARGET}