diff options
author | SangYoun Kwak <sy.kwak@samsung.com> | 2022-06-09 14:58:56 +0900 |
---|---|---|
committer | SangYoun Kwak <sy.kwak@samsung.com> | 2022-06-09 19:03:35 +0900 |
commit | 4b7307853ca592e218e8c00ff2c095aa75ac6354 (patch) | |
tree | 05676a658de3da910ad396c51d62d43bef241ac1 | |
parent | 2af878719653638fad0e4376a407e5ff8fef608a (diff) | |
download | initrd-recovery-4b7307853ca592e218e8c00ff2c095aa75ac6354.tar.gz initrd-recovery-4b7307853ca592e218e8c00ff2c095aa75ac6354.tar.bz2 initrd-recovery-4b7307853ca592e218e8c00ff2c095aa75ac6354.zip |
Fix to specify partition(a or b) when using blkid
Change-Id: Ic53f0eda667d393f395c4a3a0db68e5c6e7f302a
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
-rwxr-xr-x | src/initrd-recovery/init | 80 |
1 files changed, 40 insertions, 40 deletions
diff --git a/src/initrd-recovery/init b/src/initrd-recovery/init index 0b6f354..a23c598 100755 --- a/src/initrd-recovery/init +++ b/src/initrd-recovery/init @@ -51,6 +51,45 @@ mkdir_p_parent() { } #------------------------------------------------ +# get partition id +#------------------------------------------------ +get_partition_id() { + P_SLOT=$([[ $(</proc/cmdline) =~ partition_ab=([ab]) ]]; echo ${BASH_REMATCH[1]}) + P_SUFFIX="" + + if [ "${P_SLOT}" != "" ]; then + P_SUFFIX="_${P_SLOT}" + echo "Using A/B slot: ${P_SLOT}" + fi + + PART_ROOTFS=`/sbin/blkid -t PARTLABEL=rootfs${P_SUFFIX} -o device` + if [ x$PART_ROOTFS = "x" ] + then + PART_ROOTFS=`/sbin/blkid -L rootfs` + fi + + PART_SYSTEM_DATA=`/sbin/blkid -t PARTLABEL=system-data -o device` + if [ x$PART_SYSTEM_DATA = "x" ] + then + PART_SYSTEM_DATA=`/sbin/blkid -L system-data` + fi + + PART_RAMDISK=`/sbin/blkid -t PARTLABEL=ramdisk${P_SUFFIX} -o device` + if [ x$PART_RAMDISK = "x" ] + then + PART_RAMDISK=`/sbin/blkid -L ramdisk` + fi + + PART_HAL=`/sbin/blkid -t PARTLABEL=hal${P_SUFFIX} -o device` + if [ x$PART_HAL = "x" ] + then + PART_HAL=`/sbin/blkid -L hal` + fi + + PART_USER=$("$BLKID" --match-token PARTLABEL=user -o device || "$BLKID" --match-token LABEL=user -o device) +} + +#------------------------------------------------ # copy_hal_data #------------------------------------------------ copy_hal_data() { @@ -69,7 +108,7 @@ copy_hal_data() { fi done < /hal/.hal_list - PART_HAL=$("$BLKID" -L "hal" -o device) + PART_HAL=$("$BLKID" -t PARTLABEL="hal${P_SUFFIX}" -o device) if [ "$need_copy" = "1" -a "z$PART_HAL" != "z" ]; then #mount hal partition "$MKDIR" -p ${HAL_PATH} @@ -146,45 +185,6 @@ restore_partitions() { } #------------------------------------------------ -# get partition id -#------------------------------------------------ -get_partition_id() { - P_SLOT=$([[ $(</proc/cmdline) =~ partition_ab=([ab]) ]]; echo ${BASH_REMATCH[1]}) - P_SUFFIX="" - - if [ "${P_SLOT}" != "" ]; then - P_SUFFIX="_${P_SLOT}" - echo "Using A/B slot: ${P_SLOT}" - fi - - PART_ROOTFS=`/sbin/blkid -t PARTLABEL=rootfs${P_SUFFIX} -o device` - if [ x$PART_ROOTFS = "x" ] - then - PART_ROOTFS=`/sbin/blkid -L rootfs` - fi - - PART_SYSTEM_DATA=`/sbin/blkid -t PARTLABEL=system-data -o device` - if [ x$PART_SYSTEM_DATA = "x" ] - then - PART_SYSTEM_DATA=`/sbin/blkid -L system-data` - fi - - PART_RAMDISK=`/sbin/blkid -t PARTLABEL=ramdisk${P_SUFFIX} -o device` - if [ x$PART_RAMDISK = "x" ] - then - PART_RAMDISK=`/sbin/blkid -L ramdisk` - fi - - PART_HAL=`/sbin/blkid -t PARTLABEL=hal${P_SUFFIX} -o device` - if [ x$PART_HAL = "x" ] - then - PART_HAL=`/sbin/blkid -L hal` - fi - - PART_USER=$("$BLKID" --match-token PARTLABEL=user -o device || "$BLKID" --match-token LABEL=user -o device) -} - -#------------------------------------------------ # Main Routine Start #------------------------------------------------ echo "You entered into /sbin/init on initrd" |