> Hello,
>
> Gene Cumm said on Thu, Oct 22, 2015 at 06:39:44PM -0400:
> >On Thu, Oct 22, 2015 at 1:56 PM, Bruno Cornec via Syslinux
> ><syslinux at zytor.com> wrote:
> >
> >> 3/ Using syslinux.efi in a FAT32 image (similar to the previous 2
> >> confs) stored on a iso9660 media by genisoimage and its
> >> -eltorito-alt-boot -efi-boot $imagefile -no-emul-boot option
doesn't
> >> work. I get a red screen with debug info (attached). However,
I'm not
> >> trying to access anything outside of the FAT32 FS. I thought it
> >> wouldn't be related to iso9660 in that use case. (I use
wirtual media
> >> method mounted via iLO URL CD feature if that matters)
> >
>
> >I'd suggest using the latest general-purpose test binaries I've
published.
>
>https://sites.google.com/site/genecsyslinux/sl604p0g18-x64.tgz?attredirects=0&d=1
>
> I've made a test this morning (sorry no time before). Result is the
same
> type of red messages on the console for the server (with No image
> information).
>
>
> To give more background info, I'm using a master system running RHEL
7.1
> (to have a kernel and initrd at hand) and use the following script to
> generate the ISO image:
>
> ------------------------------------------------------------------------
> #!/bin/bash
>
> TMPDIR=/tmp/uefi.$$
> imagefile=$TMPDIR/1.img
> mkdir -p $TMPDIR/mnt
> dd if=/dev/zero of=$imagefile bs=1k count=80000
> mkfs.vfat $imagefile
> mount -t vfat -o loop $imagefile $TMPDIR/mnt
> dest=$TMPDIR/mnt/boot/efi
> mkdir -p $dest
> cp /boot/vmlinuz-3.10.0-229.el7.x86_64 $TMPDIR
> cp /boot/initramfs-3.10.0-229.el7.x86_64.img $TMPDIR
> cp /usr/share/syslinux/efi64/* $dest
> cp /usr/share/syslinux/isolinux.bin $TMPDIR
> cat > $dest/syslinux.cfg << EOF
> PROMPT 0
>
> MENU TITLE PXE UEFI Special Boot Menu
> MENU AUTOBOOT Starting Local System in # seconds
>
> LABEL bootlocal
> MENU LABEL ^Boot on local HDD
> MENU DEFAULT
> LOCALBOOT 0
> TIMEOUT 80
> TOTALTIMEOUT 9000
>
> LABEL RHEL 7.1
> MENU LABEL ^RHEL 7.1
> KERNEL vmlinuz-3.10.0-229.el7.x86_64
> APPEND initrd=initramfs-3.10.0-229.el7.x86_64.img
> EOF
> umount $TMPDIR/mnt
> cd $TMPDIR
> /usr/bin/mkisofs -U -J -r -v -p Mindi -publisher http://www.mondorescue.org
-A Mindi -V Mindi_Image -o testuefi.iso -b isolinux.bin -c boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -efi-boot
1.img -no-emul-boot .
> pwd
> ls -al `pwd`
> ------------------------------------------------------------------------
>
> Which produces the folloing output:
>
> ------------------------------------------------------------------------
> 80000+0 records in
> 80000+0 records out
> 81920000 bytes (82 MB) copied, 0.207685 s, 394 MB/s
> mkfs.fat 3.0.20 (12 Jun 2013)
> Warning: creating filesystem that does not conform to ISO-9660.
> I: -input-charset not specified, using utf-8 (detected in locale
> settings)
> genisoimage 1.1.11 (Linux)
> Scanning .
> Scanning ./mnt
> Writing: Initial Padblock Start Block 0
> Done with: Initial Padblock Block(s) 16
> Writing: Primary Volume Descriptor Start Block 16
> Done with: Primary Volume Descriptor Block(s) 1
> Writing: Eltorito Volume Descriptor Start Block 17
> Size of boot image is 4 sectors -> No emulation
> Size of boot image is 160000 sectors -> No emulation
> Done with: Eltorito Volume Descriptor Block(s) 1
> Writing: Joliet Volume Descriptor Start Block 18
> Done with: Joliet Volume Descriptor Block(s) 1
> Writing: End Volume Descriptor Start Block 19
> Done with: End Volume Descriptor Block(s) 1
> Writing: Version block Start Block 20
> Done with: Version block Block(s) 1
> Writing: Path table Start Block 21
> Done with: Path table Block(s) 4
> Writing: Joliet path table Start Block 25
> Done with: Joliet path table Block(s) 4
> Writing: Directory tree Start Block 29
> Done with: Directory tree Block(s) 2
> Writing: Joliet directory tree Start Block 31
> Done with: Joliet directory tree Block(s) 2
> Writing: Directory tree cleanup Start Block 33
> Done with: Directory tree cleanup Block(s) 0
> Writing: Extension record Start Block 33
> Done with: Extension record Block(s) 1
> Writing: The File(s) Start Block 34
> 9.69% done, estimate finish Sun Oct 25 12:06:18 2015
> 19.34% done, estimate finish Sun Oct 25 12:06:18 2015
> 29.02% done, estimate finish Sun Oct 25 12:06:18 2015
> 38.67% done, estimate finish Sun Oct 25 12:06:18 2015
> 48.36% done, estimate finish Sun Oct 25 12:06:18 2015
> 58.01% done, estimate finish Sun Oct 25 12:06:18 2015
> 67.69% done, estimate finish Sun Oct 25 12:06:18 2015
> 77.34% done, estimate finish Sun Oct 25 12:06:18 2015
> 87.03% done, estimate finish Sun Oct 25 12:06:18 2015
> 96.70% done, estimate finish Sun Oct 25 12:06:18 2015
> Total translation table size: 2048
> Total rockridge attributes bytes: 827
> Total directory bytes: 2048
> Path table size(bytes): 22
> Done with: The File(s) Block(s) 51538
> Writing: Ending Padblock Start Block 51572
> Done with: Ending Padblock Block(s) 150
> Max brk space used 0
> 51722 extents written (101 MB)
> /tmp/uefi.2667
> total 206532
> drwxr-xr-x. 3 root root 4096 Oct 25 12:06 .
> drwxrwxrwt. 29 root root 4096 Oct 25 12:06 ..
> -rw-r--r--. 1 root root 81920000 Oct 25 12:06 1.img
> -rw-r--r--. 1 root root 18557142 Oct 25 12:06
initramfs-3.10.0-229.el7.x86_64.img
> -rw-r--r--. 1 root root 40960 Oct 25 12:06 isolinux.bin
> drwxr-xr-x. 2 root root 4096 Oct 25 12:06 mnt
> -rw-r--r--. 1 root root 105926656 Oct 25 12:06 testuefi.iso
> -rwxr-xr-x. 1 root root 5026624 Oct 25 12:06
vmlinuz-3.10.0-229.el7.x86_64
> ------------------------------------------------------------------------
>
> I then boot another server using the iLO remote console and give to the
> server a virtual media pointing to the ISO image testuefi.iso which i
> have copied to my deployment server which served it through http to it.
>
> For now that image is not booted automatically (that's another issue I
> need to solve, but that's not blocking for now), so I use the UEFI menu
> to go onto the MBR partition of the bootable ISO, into boot/efi and
> select syslinux.efi to execute. That's where the red screen occurs.
>
> I think it's reproduceable by other people provinding you have a Linux
> system with mkfs.fvat, syslinux 6.03 (or your version for the efi files),
> and a mksisofs/genisoimage supporting efi boot (at least pretending to
> ;-). For other non RHEL systems, it could be possible to use other
> options such as -eltorito-platform 0xEF -eltorito-boot instead of
> -efi-boot from what I read.
>
> Hope this clarifies what I'm trying to do, and feel free to point me to
> error I could have made in the usage of syslinux.
>
> Thanks again for your help and return,
> Bruno.
> --
> Open Source Profession, Linux Community Lead WW http://opensource.hp.com
> HP EMEA EG Open Source Technology Strategist http://hpintelco.net
> FLOSS projects: http://mondorescue.org http://project-builder.org
> Musique ancienne? http://www.musique-ancienne.org http://www.medieval.org
> _______________________________________________
>
Some points to consider, if not for general use then at least for the
troubleshooting phase:
_ Creating filesystem that _does_ conform to ISO-9660;
_ The fat image should not be bigger than 32MiB, and it should be
aligned. The latter suggestion is usually ignored by almost everyone,
but if we are troubleshooting...
_ Creating a UEFI-boot-only image...
_ genisoimage is not the same as mkisofs; do not use the former (which
has been unmaintained since 2010). BTW, the EFI parameters for mkisofs
are documented in its manual (year 2012 is the latest version of the
manual available, with 2010 being the prior version of the manual).
_ "eltorito-alt-boot -efi-boot 1.img -no-emul-boot" will be inadequate
for mkisofs.
_ Since you don't even get to the Syslinux prompt, I would suggest, for
troubleshooting purposes, to not even care about the kernel+initrd;
don't add these files. Let's just see syslinux.efi + ldlinux.e* get to
the Syslinux boot prompt.
You mentioned some MBR. The efi image should not have any MBR, and if
the ISO image was treated with isohybrid, I would suggest avoiding it
at this time, for troubleshooting purposes.
I apologize if something I wrote here is not clear enough. At this
moment I don't have the time for more details / clearer explanations.
For troubleshooting, KISS.
Regards,
Ady.