iPXE discussion forum

Full Version: PHP causing wimboot to fail with: Bad CPIO magic, FATAL: could not extract inited fil
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi everyone,

I'm having some more PHP woes with IPXE.

It seems if i get iPXE to boot a php file and then tell that php file to load some software with wimboot, i get the following error:

Quote:Bad CPIO magic, FATAL: could not extract inited file

I've tried multiple wim files and they work fine when in iPXE menu, but once php code boots it doesn't want to chain load wimboot properly.

My php code is:

Code:
    print "kernel wimboot"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOTMGR"."\n";
    print "initrd http://192.168.0.1/iso/paragon/ibm/BOOT/BOOT.SDI"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/BCD"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/MEMTEST.EXE"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/FONTS/CHS_BOOT.TTF"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/FONTS/CHT_BOOT.TTF"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/FONTS/JPN_BOOT.TTF"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/FONTS/KOR_BOOT.TTF"."\n";
    print "initrd http://192.168.0.1/iso/paragon/BOOT/FONTS/WGL4_BOOT.TTF"."\n";
    print "initrd http://192.168.0.1/iso/paragon/SOURCES/BOOT.WIM"."\n";
    print "boot"."\n";

I've tried using:

Code:
--autofree

for kernel and inited lines, but it doesn't work either :/
I've tried using wimboot 1.0.4 and 1.0.6, both produce the same error.
Hahhaha for some reason before i post a message on here i can't find the answer.
And as soon as I do i find it ...

http://forum.ipxe.org/showthread.php?tid=6844
You've forgotten the second parameter to the initrd lines. It ensures that the file is packed into an anonymous CPIO archive located in the right location in the virtual filesystem.

Code:
#don't do this
print "initrd http://192.168.0.1/iso/paragon/BOOT/BCD"."\n";
#do this
print "initrd http://192.168.0.1/iso/paragon/BOOT/BCD BCD"."\n";
Reference URL's