I have downloaded the Parted Magic 2013_02_28 image and investigated the problem. Unfortunately, the Parted Magic folks didn't create the EFI image according to the UEFI specification... It will only work on EFI systems which include an ISO9660 driver, and our EFI implementation (and many others) does not include that driver.
Until Parted Magic is corrected to support the boot method described in the UEFI specification, it won't be bootable inside an EFI virtual machine.
You have two other options that I can see:
1. Most OSes will partition the disk using GPT when you boot the installer through EFI and follow the normal installation procedure.
2. Switch the virtual machine back to BIOS (firmware = "bios"). You should then be able to boot Parted Magic and partition the disk. I expect that Parted Magic should be able to create GPT when booted through BIOS, although it might not be the default. Switch the virtual machine back to [U]EFI before you install an OS onto the virtual hard disk.
Note that EFI has specific partitioning requirements (the EFI System Partition, or ESP, is mandatory) and EFI OSes can have further requirements (Windows requires the Microsoft Reserved partition, or MSR), so partitioning an OS for EFI is not always straightforward...
Hi again balubeto,
I see you also posted this question in the Parted Magic forums. Patrick Verner suggested there that the newer "test" version of Parted Magic might already fix the problem. I've downloaded the 2013_04_15 version from the link he gave there, and it seems to work: I can boot it in 32-bit and 64-bit EFI mode without any problems.
Does it work for you also?
It works too.
Darius - I am trying to boot a VM with firmware = "efi" from a Ubuntu-CD and have had no luck so far.
Do you by chance know a working mkisofs command that creates a efi-bootable Ubuntu CD ?
Or do you know any Ubuntu version that boots from CD in a efi-VM ?
Ubuntu 10.10 onwards include EFI support on their x64 "alternate", "desktop" and "server" media. (The 32-bit versions don't have any EFI support at all.)
As long as you have the Guest OS type set to "Ubuntu 64-bit", it should work with our EFI implementation.
If you still get the EFI Shell instead, just type "exit" and use the (not-user-friendly-at-all) EFI menus to pick the boot device and see if that works. Sometimes the EFI Shell just becomes an obstruction in the boot order...
If you're using mkisofs to create your own CD image, I wrote up a good summary of the requirements for the CentOS folks over in CentOS bug 5387.
After reading your post at the Centos forum I managed to make a selfmade Ubuntu LiveCD that boots in a EFI-VM with a command like this:
%MKISOFS% -l -v -iso-level 4 -l -J -joliet-long -R -volid %Volume_Name% -sysid "" -A "EFIMAGE" -V Efi-LIVE -c BOOT.CAT -eltorito-platform "x86" -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -eltorito-platform "efi" -b boot/grub/efi.img -no-emul-boot -input-charset utf-8 -o moa64dvdefi.iso moa64dvdefi
Darius - do you know a way to make a CD that can boot into different operating systems in a EFI-VM ?
I have a CD that boots into ESXi 5.1, Windows 7 and Ubuntu 64 - that is no problem on systems with a normal BIOS - but it seems impossible on EFI.
Do you know a way to use more than one efi.img ?