CentOS-Virt,
I ran into an error attempting to offer two boot options using libvirt with kvm. I wanted the virtual to first attempt to boot from its "disk" and if that didn't work, fall back on netboot (we kickstart install). This argument is "-boot cn".
If the disk you provide is of type IDE this will probably work for you, unless you use "-drive" with the argument ",boot=on" as libvirt does by default. All drive types, other than IDE, can not be booted from without the "boot=on" argument given to "-drive" which is why this is a standard config in libvirt.
If you try this you will fail with "*Too many* option *ROMS*". The reason for this is, qemu only allows for 64kb of space for ROMs. Most pxe boot ROMs are 64kb, including the ones in etherboot-roms-kvm (found in /usr/share/etherboot). Because of this, qemu provides 32kb (found in /usr/share/qemu) version of the PXE boot roms.
When booting kvm virtuals with qemu-kvm it looks for etherboot roms in /usr/share/kvm/ which has symlinks pointing to /usr/share/etherboot/ and seem to be placed their by the "kvm" rpm.
That being said, I'm tempted to just change the symlinks, however qemu does not provide a PXE rom for e1000.
I have already reported this to the fedora community, and I'm told a solution has been put in place. I have yet to see the update show up in my yum updates, but I'm confident one will be put in place as a lot of the et.redhat.com projects use kvm.
In the mean time, any ideas?
Best Regards, Michael Schenck