[syslinux] Creating LiveCD with EFI option?

Email email at missionaccomplish.com
Fri Jul 4 08:57:36 PDT 2014


I have been using syslinux-6.x along with isohybrid --mac and --efi option to create a usb hybrid iso with EFI support. The thing with EFI is that you'll need to use grub as your bootloader for EFI but isohybrid does setup the proper partition schema for EFI.

You'll need to use the following to generate an iso that works.

xorriso -as mkisofs -J -R -l -V some-vol-label \
  -o ../image.iso \
  -c isolinux/boot.cat \
  -b isolinux/isolinux.bin \
     -no-emul-boot -boot-load-size 4 -boot-info-table \
  -eltorito-alt-boot \
  -e isolinux/efiboot.img -no-emul-boot -eltorito-alt-boot \
  -e isolinux/macboot.img -eltorito-id "MAC" -no-emul-boot \
  ../src

isolinux/efiboot.img is a vfat image that contains:
* EFI/BOOT/bootx32.efi - created with grub2-mkimage
* EFI/BOOT/grub.cfg - standard grub.cfg

isolinux/macboot.img is a bit more complicated but if you don't need your iso 
to boot on macosx hardware you can ommit this flag. This file contains:

* .VolumeIcon.icns - icon for EFI boot image in macosx
* EFI/BOOT/BOOTX64.efi
* EFI/BOOT/grub.cfg
* mach_kernel - dummy kernel required for boot
* System/Library/CoreServices/boot.efi - basically a blessed BOOTX64.efi
* System/Library/CoreServices/grub.cfg
* System/Library/CoreServices/SystemVersion.plist

You can look at mkefiboot.py from fedora's lorax package to see how this was generated. I have a customized copy which generates the macboot.img without the shim support.

After you've done generating the iso image with xorriso you can just run:

isohybrid --uefi --mac image.iso then test this image with qemu and http://tianocore.sourceforge.net/wiki/OVMF with the -bios option to qemu.

Good luck and happy debugging!


On Thu, 3 Jul 2014 15:26:31 +0200
Klaus Knopper <syslinux at knopper.net> wrote:

> Hello,
> 
> On Thu, Jul 03, 2014 at 10:58:11PM +1000, Michael D. Setzer II wrote:
> > I've been using various versions of syslinux as the boot loader for the g4l 
> > project that I have been the maintainer of since 2004. It was already using 
> > syslinux, so I've just updated it over the years, and currently have it use 5.10 
> > version, but have done test builds with the 6.x versions.
> > 
> > Recently had request from to users about EFI support, and one suggested 
> > that virtualbox has option for testing, so I cloned the current testing of the 
> > ISO to and EFI format, but just get a shell, so it requires some more steps. 
> > 
> > Did some searching, but haven't found anything that seems to have the exact 
> > steps. Also, not sure if I could make a single iso that would work with both, or 
> > have to create two different versions. In testing 6.x of syslinux, I just copied 
> > the files  to a different directory and replace the 5.x versions with 6.x 
> > versions, and build process remained the same.
> 
> You may check the current version of Knoppix 7.3 (or 7.2), which
> contains a efi/boot directory with a patched version of syslinux.efi
> that will read the standard syslinux.cfg file for 32bit, and
> syslnx64.cfg for 64bit. This version, when copied to USB flash disk, is
> know to work in both cases, the standard BIOS (called CSM in EFI) or EFI
> mode, just no secure boot possible since the boot loader is not signed.
> 
> Seems to work on many notebooks set to EFI-boot, just apple seems to
> have problems reinitializing the graphics card after having booted via
> syslinux-efi (system invisibly boots to the desktop, but screen stays
> blank, no graphics).
> 
> For testing in a virtual environment, I use
> 
> kvm -m 2000 -monitor stdio -soundhw es1370 -L Ovmf/ -hda sda.img -fda fd0.img
> 
> where directory Ovmf contains the open source EFI firmware from
> http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=OVMF
> 
> I did not test efi boot from CD yet, the above scenario is just for USB
> flash disks with a primary FAT32 partition, as expected by the EFI
> firmware.
> 
> Regards
> -Klaus
> _______________________________________________
> Syslinux mailing list
> Submissions to Syslinux at zytor.com
> Unsubscribe or set options at:
> http://www.zytor.com/mailman/listinfo/syslinux


-- 
Thank you,
Fernando Reyes
GPG BDD75DD7
Mission Accomplish, Inc.
http://missionaccomplish.com
Tel: 7187100008
Cell: 3479275477


More information about the Syslinux mailing list