diff options
author | Tom Rini <trini@konsulko.com> | 2018-04-03 16:11:22 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-04-03 16:11:22 -0400 |
commit | 7fd3464a23a54c495e1a7ab3ef1cde1fe83aeda2 (patch) | |
tree | 396a901f898e7d364f85784f3f2e4f4d3b3ae771 | |
parent | ea00cb6f79616987d7e3c7e83a6ee01cb73eb170 (diff) |
Make better use of UUIDs on Intel platform wks files
- Stop using --ondisk XXX in the wks files, that enforces using
USB/SATA/etc as /etc/fstab will be referencing these devices.
- Pass --use-uuid for the boot partition
- Update mkefi-agl.sh and mkabl-agl.sh to modify the final fstab to
use the PARTUUID they create rather than the PARTUUID of the resulting
wic file.
Change-Id: I450ba77805fdb83e31411ea48b25aad415fa8a69
Bug-AGL: SPEC-1300
Signed-off-by: Tom Rini <trini@konsulko.com>
-rw-r--r-- | meta-agl-bsp/wic/systemd-intel-corei7-64-bootdisk.wks | 4 | ||||
-rw-r--r-- | meta-agl-bsp/wic/systemd-joule-bootdisk.wks | 4 | ||||
-rwxr-xr-x | scripts/mkabl-agl.sh | 3 | ||||
-rwxr-xr-x | scripts/mkefi-agl.sh | 3 |
4 files changed, 10 insertions, 4 deletions
diff --git a/meta-agl-bsp/wic/systemd-intel-corei7-64-bootdisk.wks b/meta-agl-bsp/wic/systemd-intel-corei7-64-bootdisk.wks index 605d622a6..56393728b 100644 --- a/meta-agl-bsp/wic/systemd-intel-corei7-64-bootdisk.wks +++ b/meta-agl-bsp/wic/systemd-intel-corei7-64-bootdisk.wks @@ -3,9 +3,9 @@ # can directly dd to boot media. The selected bootloader is systemd-boot # and we do not have swap -part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,initrd=microcode.cpio" --ondisk sda --label msdos --active --align 1024 +part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,initrd=microcode.cpio" --use-uuid --label msdos --active --align 1024 -part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024 --use-uuid +part / --source rootfs --fstype=ext4 --label platform --align 1024 --use-uuid # Modify the append line here as needed to suit the environment. # diff --git a/meta-agl-bsp/wic/systemd-joule-bootdisk.wks b/meta-agl-bsp/wic/systemd-joule-bootdisk.wks index 87b006f07..a318e2315 100644 --- a/meta-agl-bsp/wic/systemd-joule-bootdisk.wks +++ b/meta-agl-bsp/wic/systemd-joule-bootdisk.wks @@ -4,9 +4,9 @@ # and we do not have swap. We assume a Joule system and provide an # appropriate kernel command line. -part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,initrd=microcode.cpio" --ondisk sda --label msdos --active --align 1024 +part /boot --source bootimg-efi --sourceparams="loader=systemd-boot,initrd=microcode.cpio" --use-uuid --label msdos --active --align 1024 -part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024 --use-uuid +part / --source rootfs --fstype=ext4 --label platform --align 1024 --use-uuid # Modify the append line here as needed to suit the environment bootloader --ptable gpt --timeout=5 --append="rootwait rootfstype=ext4 console=ttyS2,115200n8 console=tty0 video=efifb maxcpus=4 noxsave reboot=efi kmemleak=off" diff --git a/scripts/mkabl-agl.sh b/scripts/mkabl-agl.sh index 8483d231d..611c08fbc 100755 --- a/scripts/mkabl-agl.sh +++ b/scripts/mkabl-agl.sh @@ -375,6 +375,7 @@ ROOTFS_DISKID=$(fdisk -l "$DEVICE" | grep -e "Disk identifier" | sed -n 's/^.*Di if [ $ROOTFS_DISKID = "" ]; then die "Failed to read DISKID" fi +BOOTFS_PARTUUID="$ROOTFS_DISKID-01" ROOTFS_PARTUUID="$ROOTFS_DISKID-02" debug "PARTUUID for ROOTFS is $ROOTFS_PARTUUID" @@ -476,6 +477,8 @@ fi debug "removing any swap entry in /etc/fstab" sed --in-place '/swap/d' $ROOTFS_MNT/etc/fstab +debug "fixing PARTUUID for /boot" +sed --in-place -e "s#PARTUUID=[0-9a-z-]\+\t/boot#${BOOTFS_PARTUUID}\t/boot#" $ROOTFS_MNT/etc/fstab printf "flushing data on removable device. May take a while ... " sync --file-system $ROOTFS_MNT diff --git a/scripts/mkefi-agl.sh b/scripts/mkefi-agl.sh index 14ade366e..48a0af44d 100755 --- a/scripts/mkefi-agl.sh +++ b/scripts/mkefi-agl.sh @@ -352,6 +352,7 @@ ROOTFS_DISKID=$(fdisk -l "$DEVICE" | grep -e "Disk identifier" | sed -n 's/^.*Di if [ $ROOTFS_DISKID = "" ]; then die "Failed to read DISKID" fi +BOOTFS_PARTUUID="$ROOTFS_DISKID-01" ROOTFS_PARTUUID="$ROOTFS_DISKID-02" debug "PARTUUID for ROOTFS is $ROOTFS_PARTUUID" @@ -500,6 +501,8 @@ else fi debug "removing any swap entry in /etc/fstab" sed --in-place '/swap/d' $ROOTFS_MNT/etc/fstab +debug "fixing PARTUUID for /boot" +sed --in-place -e "s#PARTUUID=[0-9a-z-]\+\t/boot#${BOOTFS_PARTUUID}\t/boot#" $ROOTFS_MNT/etc/fstab printf "flushing data on removable device. May take a while ... " sync --file-system $ROOTFS_MNT |