Boot iso from ipxe menu



  • Server
    • FOG Version: 1.4.4
    • OS: Ubuntu 17.04 on Hyper-V
    Client
    • Service Version: Hyper-V Virtual Machine Generation 2
    • OS: None yet
    Description ISO boot over added menu entry

    Hello,

    Since i got my fog to work on a Hyper-V VM. Capturing and Deploying of images works just fine now.
    I did a Little Research to solve other Problems and came across pxe ISO boot.

    i made a new directory in

    /var/www/fog/isoimg

    In there i tossed a ubuntu iso and the memdisk file.

    I’ve made a new iPXE Boot menu entry

    “Menu Item:” Ubuntu

    “Description” Ubuntu iso

    “Parameters:” initrd http://${fog-ip}/fog/isoimg/ubuntu.iso
    chain memdisk iso raw

    Now to the Problem…
    I see and can select the added menu entry
    after that i get following lines.
    http://192.168.19.104/isoimg/ubuntu.iso … ok
    memdisk … ok
    Could not boot: Exec format error (http://ipxe.org/2e008081)

    Am i missing something out?

    All help is very welcome



  • @mtn038 Can you post the contents of /etc/exports, the menu entry you created for Mint, the full path to your Mint files, and how you’re trying to boot (nfs, http, raw iso)?



  • Has anyone had luck deploying a Linux Mint ISO? I followed the Hirens 15.04 guide and tried editing kmstory’s code and still have had no luck. If anyone has done this before and can point me in the right direction on how to get this working I would really appreciate it.


  • Moderator

    @Quazz said in Boot iso from ipxe menu:

    @Wayne-Workman Can’t you technically wimboot Windows ISOs, assuming you have enough RAM?

    Yes. The comment earlier was about Linux being the only OS sometimes that is able to boot over HTTP. As in every single little file needed in the entire boot process is a web request to a file.

    ISOs for Linux or Windows can of course be totally loaded into RAM first - then all the little file requests during booting are just accessing RAM, not over HTTP.


  • Moderator

    @Wayne-Workman Can’t you technically wimboot Windows ISOs, assuming you have enough RAM?



  • @kmstory

    Wow!

    Thank you so much for you help.

    I will absolutely try to do it whit nfs. I Also worked whit the guide “Include any ISO in the FOG Boot menu". But it seemed like i even know less about PXE boot than you :o.

    I don’t have time to work at it right know, but i eventually have to figure this out.

    I wasn’t able to find Information like this in the wiki, maybe someone who does understand more about PXE boot will post some examples of their Configuration there? I sure am not the only “rookie” user of Fog server who wasn’t able to find(enough) Information about this topic



  • I did something similar; I’ve got two WinPEs (x86 and x86_64) booting via http and a Xubuntu live image booting via nfs.

    Trying to boot the entire iso is possible (the Plop Linux network booting page has some useful info), but there are some caveats:

    • If you take a live ISO (like Ubuntu desktop) and boot it raw (which is what your menu options are attempting to do) with PXE, you probably won’t be able to install from it, because of the way the live session mounts the install files. I wasted almost an entire day trying to get that to work.

    • It will have to load the entire ISO before it boots, so it could take a while. When I set up my WinPE boot, I used an ISO and it took several minutes to load every time I tried to boot it.

    What I settled on for my Xubuntu live image is booting over NFS (I used the Hirens 15.04 section of the FOG wiki’s “Include any ISO in the FOG Bootmenu” guide as a template. When I was trying to use http, I couldn’t install on the local disk, but with NFS, I can! it might be that I don’t know enough about (i)PXE to figure out how to get http to work, but I decided to stick with NFS.

    I just unpacked the ISO into a folder in my NFS share and added the menu entry in FOG.

    Here’s my menu entry for Xubuntu:

    kernel nfs://${next-server}/images/xubuntu/casper/vmlinuz.efi
    initrd nfs://${next-server}/images/xubuntu/casper/initrd.lz
    imgargs vmlinuz.efi acpi=off root=/dev/nfs boot=casper netboot=nfs nfsroot=${next-server}:/images/xubuntu locale=en_US.UTF-8 keyboard-configuration/layoutcode=us mirror/country=US
    boot
    

    And here’s my menu entry for WinPE (32-bit):

    cpuid --ext 29 && set arch x86
    kernel http://${next-server}/winpe_x86/wimboot
    initrd http://${next-server}/winpe_x86/BOOT/BCD BCD
    initrd http://${next-server}/winpe_x86/BOOT/BOOT.SDI BOOT.SDI
    initrd http://${next-server}/winpe_x86/BOOT/BOOT.WIM BOOT.WIM
    boot
    

    In case you’re interested, I created the WinPE boot files using Microsoft’s “Configure a PXE server to load Windows PE” guide. Then I got the (rough) menu entry from iPXE’s “Network-booting Windows PE” page.


  • Moderator

    @Dogy007 said in Boot iso from ipxe menu:

    I am also wondering if there is a method to do this without loading the iso into the ram of the maschines?

    Yes, you wound mount the ISO so that the individual files can be read instead of the whole ISO, and tell the kernel to use http. Generally, only Linux distributions can even do this, Windows cannot.



  • Hi!
    Thank you for your TIPP!

    however, i figured out that bios computers and Generation - 1 VM (on hyper-v) load perfectly, i only struggle with Generation 2 once again…

    I did follow your tipp and mounted it first (still do not fully understand why this is necessary, since i’m not used to linux) but i didn’t help, i got the exact same Error as before.

    I am also wondering if there is a method to do this without loading the iso into the ram of the maschines?


  • Moderator

    The init typically is a file, not an iso. you need to mount it first.


Log in to reply
 

495
Online

39005
Users

10720
Topics

101776
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.