Hi, I am trying to create a hybrid ISO image for FreeBSD 9.2 using syslinux 6.01 and isohybrid.pl I found at http://www.overclockix.com/sources/isohybrid.pl (I know there is a C version in syslinux but I haven't been able to build it yet due to the UUID library being different to the one in FreeBSD). According to the wiki mboot.c32 can boot FreeBSD, however I haven't been able to get it working. I have the following.. root at build92:~ # ll /tmp/iso/isolinux/ total 356 -r--r--r-- 1 root wheel 1185 Jul 31 01:55 cdboot.bin -rw-r--r-- 1 root wheel 38912 Jul 31 08:17 isolinux.bin -rw-r--r-- 1 root wheel 78 Jul 31 11:34 isolinux.cfg -rwxr-xr-x 1 root wheel 115472 Jul 31 01:39 ldlinux.c32* -rwxr-xr-x 1 root wheel 182520 Jul 31 08:17 libcom32.c32* -rwxr-xr-x 1 root wheel 10056 Jul 31 08:12 mboot.c32* And syslinux.cfg contains.. DEFAULT FreeBSD LABEL FreeBSD KERNEL mboot.c32 APPEND /boot/kernel/kernel I create the ISO with.. mkisofs -JR -o /tmp/test.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V FREEBSD_INSTALL /usr/obj/usr/src/release/bootonly /tmp/iso/ (/usr/obj/usr/src/release/bootonly is created by make release in FreeBSD) Syslinux loads & runs fine (indeed I can use it to run cdboot.bin and that actually runs FreeBSD if I am on a CD but it does not grok HD booting) however mboot does not like /boot/kernel/kernel. I get.. "Invalid Multiboot image: neither ELF header nor a.out kludge found" I also tried running the loader (/boot/loader) but I get the same message. I am not really sure how I go about getting more debugging information so any ideas gratefully received :) I am pretty sure I could fall back to using memdisk (I have used it to boot FreeBSD from syslinux in the past) but it makes the build process more complex (and this way is neater :) Thanks. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: Message signed with OpenPGP using GPGMail URL: <http://www.zytor.com/pipermail/syslinux/attachments/20130731/60940708/attachment.sig>
Op 2013-07-31 om 21:06 schreef Daniel O'Connor:> Hi, > I am trying to create a hybrid ISO image for FreeBSD > 9.2 using syslinux 6.01 and isohybrid.pl I found at > http://www.overclockix.com/sources/isohybrid.pl (I know there is a > C version in syslinux but I haven't been able to build it yet due to > the UUID library being different to the one in FreeBSD). > > According to the wiki mboot.c32 can boot FreeBSD, however I haven't > been able to get it working. I have the following.. > root at build92:~ # ll /tmp/iso/isolinux/ > total 356 > -r--r--r-- 1 root wheel 1185 Jul 31 01:55 cdboot.bin > -rw-r--r-- 1 root wheel 38912 Jul 31 08:17 isolinux.bin > -rw-r--r-- 1 root wheel 78 Jul 31 11:34 isolinux.cfg > -rwxr-xr-x 1 root wheel 115472 Jul 31 01:39 ldlinux.c32* > -rwxr-xr-x 1 root wheel 182520 Jul 31 08:17 libcom32.c32* > -rwxr-xr-x 1 root wheel 10056 Jul 31 08:12 mboot.c32* > > And syslinux.cfg contains.. > DEFAULT FreeBSD > LABEL FreeBSD > KERNEL mboot.c32 > APPEND /boot/kernel/kernel > > I create the ISO with.. > mkisofs -JR -o /tmp/test.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V FREEBSD_INSTALL /usr/obj/usr/src/release/bootonly /tmp/iso/ > > (/usr/obj/usr/src/release/bootonly is created by make release in FreeBSD) > > Syslinux loads & runs fine (indeed I can use it to run cdboot.bin and > that actually runs FreeBSD if I am on a CD but it does not grok HD > booting) however mboot does not like /boot/kernel/kernel. I get.. > "Invalid Multiboot image: neither ELF header nor a.out kludge found" > > I also tried running the loader (/boot/loader) but I get the same message. > > I am not really sure how I go about getting more debugging information > so any ideas gratefully received :)(-: Then here an idea disguished in questions: What kind (what type) of filesystem is /boot in? Is that type filesystem known to Syslinux?> I am pretty sure I could fall back to using memdisk (I have used it to > boot FreeBSD from syslinux in the past) but it makes the build process > more complex (and this way is neater :)AFAIK is memdisk filesystem type VFAT Groeten Geert Stappers -- Leven en laten leven
On Wed, Jul 31, 2013 at 7:36 AM, Daniel O'Connor <doconnor at gsoft.com.au> wrote:> Hi, > I am trying to create a hybrid ISO image for FreeBSD 9.2 using syslinux 6.01 and isohybrid.pl I found at http://www.overclockix.com/sources/isohybrid.pl (I know there is a C version in syslinux but I haven't been able to build it yet due to the UUID library being different to the one in FreeBSD).The Perl version should also be in the source tree (utils/isohybrid.in) and built in the archives (util/isohybrid.pl) which I'd recommend using everything from the 6.01 binary/source archive.> According to the wiki mboot.c32 can boot FreeBSD, however I haven't been able to get it working. I have the following.. > root at build92:~ # ll /tmp/iso/isolinux/ > total 356 > -r--r--r-- 1 root wheel 1185 Jul 31 01:55 cdboot.bin > -rw-r--r-- 1 root wheel 38912 Jul 31 08:17 isolinux.bin > -rw-r--r-- 1 root wheel 78 Jul 31 11:34 isolinux.cfg > -rwxr-xr-x 1 root wheel 115472 Jul 31 01:39 ldlinux.c32* > -rwxr-xr-x 1 root wheel 182520 Jul 31 08:17 libcom32.c32* > -rwxr-xr-x 1 root wheel 10056 Jul 31 08:12 mboot.c32* > > And syslinux.cfg contains.. > DEFAULT FreeBSD > LABEL FreeBSD > KERNEL mboot.c32 > APPEND /boot/kernel/kernel > > I create the ISO with.. > mkisofs -JR -o /tmp/test.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V FREEBSD_INSTALL /usr/obj/usr/src/release/bootonly /tmp/iso/ > > (/usr/obj/usr/src/release/bootonly is created by make release in FreeBSD) > > Syslinux loads & runs fine (indeed I can use it to run cdboot.bin and that actually runs FreeBSD if I am on a CD but it does not grok HD booting) however mboot does not like /boot/kernel/kernel. I get.. > "Invalid Multiboot image: neither ELF header nor a.out kludge found"http://www.syslinux.org/wiki/index.php/Mboot.c32#FreeBSD_example The error is perfect: You're attempting to load a file that isn't in the right format.> I also tried running the loader (/boot/loader) but I get the same message. > > I am not really sure how I go about getting more debugging information so any ideas gratefully received :) > > I am pretty sure I could fall back to using memdisk (I have used it to boot FreeBSD from syslinux in the past) but it makes the build process more complex (and this way is neater :)MEMDISK will be agnostic regarding the filesystem of the boot image. The main things that matter are geometry and the hook method (regarding the target environment). You can also compress it with GZIP to make it smaller and MEMDISK will decompress on loading. -- -Gene
On 01/08/2013, at 24:37, Gene Cumm <gene.cumm at gmail.com> wrote:> On Wed, Jul 31, 2013 at 7:36 AM, Daniel O'Connor <doconnor at gsoft.com.au> wrote: >> Hi, >> I am trying to create a hybrid ISO image for FreeBSD 9.2 using syslinux 6.01 and isohybrid.pl I found at http://www.overclockix.com/sources/isohybrid.pl (I know there is a C version in syslinux but I haven't been able to build it yet due to the UUID library being different to the one in FreeBSD). > > The Perl version should also be in the source tree > (utils/isohybrid.in) and built in the archives (util/isohybrid.pl) > which I'd recommend using everything from the 6.01 binary/source > archive.I am having trouble building it because other parts of syslinux refuse to build on FreeBSD and just going into utils and running make doesnt work :( [build92 23:38] /tmp/syslinux-6.01 #gmake -C utils isohybrid.pl gmake: Entering directory `/local0/tmp/syslinux-6.01/utils' Makefile:18: /syslinux.mk: No such file or directory gmake: *** No rule to make target `/syslinux.mk'. Stop. gmake: Leaving directory `/local0/tmp/syslinux-6.01/utils' (ie MAKEDIR is unset)>> Syslinux loads & runs fine (indeed I can use it to run cdboot.bin and that actually runs FreeBSD if I am on a CD but it does not grok HD booting) however mboot does not like /boot/kernel/kernel. I get.. >> "Invalid Multiboot image: neither ELF header nor a.out kludge found" > > http://www.syslinux.org/wiki/index.php/Mboot.c32#FreeBSD_example > > The error is perfect: You're attempting to load a file that isn't in > the right format.Can you elaborate? /boot/kernel/kernel is my kernel.. [build92 23:40] ~ #file /boot/kernel/kernel /boot/kernel/kernel: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), dynamically linked (uses shared libs), not stripped [build92 23:40] ~ #ls -la /boot/kernel/kernel -r-xr-xr-x 1 root wheel 20730068 Jul 21 13:41 /boot/kernel/kernel* -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: Message signed with OpenPGP using GPGMail URL: <http://www.zytor.com/pipermail/syslinux/attachments/20130801/65592f9e/attachment.sig>
On 31/07/2013, at 22:59, Geert Stappers <stappers at stappers.nl> wrote:>> I am not really sure how I go about getting more debugging information >> so any ideas gratefully received :) > > (-: Then here an idea disguished in questions: > > What kind (what type) of filesystem is /boot in? > Is that type filesystem known to Syslinux?Yes, it is part of the ISO image [build92 23:40] ~ #mdconfig -a -t vnode -f /tmp/test.iso md0 [build92 23:41] ~ #mount -t cd9660 /dev/da0 /mnt [build92 23:41] ~ #ll /mnt/boot/kernel/kernel -r-xr-xr-x 1 root wheel 20730068 Jul 21 13:41 /mnt/boot/kernel/kernel*>> I am pretty sure I could fall back to using memdisk (I have used it to >> boot FreeBSD from syslinux in the past) but it makes the build process >> more complex (and this way is neater :) > > AFAIK is memdisk filesystem type VFATmemdisk doesn't care and it should work but I'd prefer not to have to do that. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 195 bytes Desc: Message signed with OpenPGP using GPGMail URL: <http://www.zytor.com/pipermail/syslinux/attachments/20130801/f8dbe991/attachment.sig>