[OE-core] [PATCH 6/6] mkefidisk: Use msdos partition tables

Koen Kooi koen at dominion.thruhere.net
Wed Mar 20 07:49:33 UTC 2013


Op 19 mrt. 2013, om 23:15 heeft Darren Hart <dvhart at linux.intel.com> het volgende geschreven:

> While GPT works fine when writing to actual media, it cannot be reliably
> used for distributing disk images as it requires the backup table to be
> on the last block on the device, which of course varies from device to
> device. Use MSDOS tables instead.
> 
> Use mkfs to label the filesystems as msdos tables do not support
> partition labeling.

I was wondering if it's possible to run parted in fixup mode manually. I did that on the target itself to fix the off-by-one error, so running it on the host should work as well.

regards,

Koen


> 
> Signed-off-by: Darren Hart <dvhart at linux.intel.com>
> ---
> scripts/contrib/mkefidisk.sh | 16 +++++++---------
> 1 file changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/scripts/contrib/mkefidisk.sh b/scripts/contrib/mkefidisk.sh
> index 6ff12af..acadd49 100755
> --- a/scripts/contrib/mkefidisk.sh
> +++ b/scripts/contrib/mkefidisk.sh
> @@ -156,20 +156,18 @@ echo "*****************"
> echo "Deleting partition table on $DEVICE ..."
> dd if=/dev/zero of=$DEVICE bs=512 count=2
> 
> -echo "Creating new partition table (GPT) on $DEVICE ..."
> -parted $DEVICE mklabel gpt
> +# Use MSDOS by default as GPT cannot be reliably distributed in disk image form
> +# as it requires the backup table to be on the last block of the device, which
> +# of course varies from device to device.
> +echo "Creating new partition table (MSDOS) on $DEVICE ..."
> +parted $DEVICE mklabel msdos
> 
> echo "Creating boot partition on $BOOTFS"
> parted $DEVICE mkpart primary 0% $BOOT_SIZE
> 
> -# GPT doesn't have a real boot flag, parted will change the GUID to EFI System
> -# Partition, which is what we want
> echo "Enabling boot flag on $BOOTFS"
> parted $DEVICE set 1 boot on
> 
> -echo "Labeling $BOOTFS as EFI System Partition"
> -parted $DEVICE name 1 "EFI System Partition"
> -
> echo "Creating ROOTFS partition on $ROOTFS"
> parted $DEVICE mkpart primary $ROOTFS_START $ROOTFS_END
> 
> @@ -184,10 +182,10 @@ parted $DEVICE print
> #
> echo ""
> echo "Formatting $BOOTFS as vfat..."
> -mkfs.vfat $BOOTFS
> +mkfs.vfat $BOOTFS -n "efi"
> 
> echo "Formatting $ROOTFS as ext3..."
> -mkfs.ext3 $ROOTFS
> +mkfs.ext3 $ROOTFS -L "root"
> 
> echo "Formatting swap partition...($SWAP)"
> mkswap $SWAP
> -- 
> 1.8.1.2
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core





More information about the Openembedded-core mailing list