[yocto] Problem creating bootable flash

Paul D. DeRocco pderocco at ix.netcom.com
Fri Mar 22 00:25:46 PDT 2013


I've successfully (theoretically) built core-image-base-cedartrail-nopvr. I
plugged a 1GB eUSB SSD onto one of my USB headers, Ubuntu automounted the
empty drive /dev/sdb1 as /media/somethingorother, I unmounted it, and then
followed the instructions on the Yocto page for the cedartrail BSP: I used
dd to copy the image to /dev/sdb1, synced, ejected it, and rebooted. I got
the dreaded "Error loading operating system" from the BIOS.

Waitaminnit, I thought, isn't this image supposed to include the partition
table, too? After all, the example given in the instructions showed the
image being copied to /dev/sdf, not sdf1. I went back into Ubuntu, saw that
/dev/sdb1 had been mounted as /mnt/boot_, and it contained initrd and the
four other files. I unmounted it, and this time used dd to copy the image to
/dev/sdb, synced, ejected it, and rebooted. This time, the BIOS wouldn't
recognize the drive at all, so all I could do was go back into Ubuntu.

Now, Ubuntu had mounted /dev/sdb as /mnt/boot_, and it still contained the
five files. That suggests to me that the image doesn't contain a partition
table, and that there is now no partition table on this drive, just a single
file system, like an old floppy. I ran parted, end it says the partition
table type is "loop", with a single FAT16 partition running from 0.00B to
1028MB, the entire drive. Is "loop" just a name for an implied partition
table that lists the entire drive, when there is no actual table?

Apparently, my BIOS (a modern Intel D2700MUD Atom mobo) looks at this USB
drive and decides it isn't bootable. So what's the right way to do this?

-- 

Ciao,               Paul D. DeRocco
Paul                mailto:pderocco at ix.netcom.com 
 




More information about the yocto mailing list