[oe] Boot issues when installing oe-core image from a USB ISO image

Alex J Lennon ajlennon at dynamicdevices.co.uk
Sat Aug 4 19:20:04 UTC 2012


Hi all,

I've been experimenting with blowing the "live" ISO image to a USB stick 
to install to a target drive.
(DISTRO=pokey, MACHINE=atom-pc, BBLAYERS as in my previous email - meta, 
meta-oe, meta-yocto)

I had a few issues with the install script (included as comments below), 
but eventually Grub installs
and reports success. However when I boot from the drive I just get the 
Grub CLI.

Having investigated a little it seems as though the Grub now used is 
Grub 1.99, which seems to
implement Grub2 changes to use a grub.cfg configuration file rather than 
the menu.lst configuration
mechanism.

The install file appears to check for a /etc/grub.d/40_custom and if 
this is present will use it to
create grub.cfg. However if this is not present it'll try to create a 
menu.lst, which appears to be
then be ignored by Grub (which is what was happening for me)

I see there's a 40_custom file referenced and installed by the 
grub_1.99.bb recipe in meta/recipes-bsp/grub
but for some reason this isn't present on my file-systems built out of, 
e.g. core-image-base/core-image-sato

Perhaps if the live image is specified as a target then the dependency 
magic needs to ensure that the grub
package is pulled into the file-system image (or perhaps if the 
install.sh is modified to reference a different
configuration file that will be present in the ram f/s image) ?

NB. When I add in "grub" as a dependency in the build image, then 
installation seems to work, I get the expected
grub menu and can boot.

A couple of other minor observations:

- the installer script ignores removable media targets. My use-case is 
for installation to another USB stick
   and I tend to think the option of installation to nominally removable 
media such as USB sticks might be
   useful to others too (e.g. installation from an external USB stick/CD 
to a USB device installed internally
   into a system)

- the installer won't work with USB sticks from manufacturers with 
"Disk" in the name (e.g. Sandisk").
   Adding a "| grep MB" into the pipe seems to fix this for me but it's 
a bit of a hack.

- the installer doesn't seem to correctly set the partition type for the 
swap partition it creates. (Might be
   useful to have the option to disable swap partition creation for 
flash-based target devices)

- there seems to be a potential issue with the target partition sizes 
created, resulting from the maths in
    the installer script, resulting in partitions that are not on 
cylinder boundaries, which fdisk seems to complain
    about.

Cheers,

Alex






More information about the Openembedded-devel mailing list