From 6889986a93415a55691fb145abe2de4cf959b62e Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Tue, 23 Feb 2021 21:36:41 -0500 Subject: partvi: create key.img when $1=="key" --- src/partvi | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/src/partvi b/src/partvi index b180812..e35169e 100755 --- a/src/partvi +++ b/src/partvi @@ -248,6 +248,12 @@ create_ptable_conf() start=$((start + devsz)) } +KEY_ONLY= +if [ "$1" = 'key' ] +then + KEY_ONLY=y +fi + set -e builddir=_build @@ -260,7 +266,14 @@ then sudo= else sudo=sudo fi -if whole=$(losetup -j whole.img -O NAME --noheadings) +if [ "$KEY_ONLY" ] +then + target=key.img +else + target=whole.img +fi + +if whole=$(losetup -j "$target" -O NAME --noheadings) then quietly $sudo umount *.mnt quietly $sudo kpartx -dv "$whole" @@ -306,15 +319,18 @@ pee_on_table() $sudo sfdisk -Y dos "$dev" < "$DOS_TABLE_FILE" || return } -truncate -s0 whole.img -for f in part*.conf -do + +clone_parts_to_target() +{ f=$(readlink -e _build/"${f%.conf}") || break - ficlonerange.py "$f" whole.img -done + ficlonerange.py "$f" "$target" +} + +truncate -s0 "$target" +iterate_partitions clone_parts_to_target -$sudo losetup -L -f whole.img -whole=$(losetup -j whole.img -O NAME --noheadings) +$sudo losetup -L -f "$target" +whole=$(losetup -j "$target" -O NAME --noheadings) (pee_on_table "$whole") || exit $sudo kpartx -u "$whole" -- cgit v1.2.3