pxe boot any iso?

Red Squirrel

No Lifer
May 24, 2003
69,726
13,345
126
www.betteroff.ca
Is there a way to setup a pxe boot server that will allow me to boot off ANY cd/dvd iso image as if it was in a cdrom drive? Basically I'd hit the pxe server, get a menu to choose which disc to "load" and then it would boot off it. Is this possible? I think it would be neat to set this up to easilly reinstall windows/linux on machines that can boot off pxe.
 

QuixoticOne

Golden Member
Nov 4, 2005
1,855
0
0
Look at SYSLINUX / PXELINUX and MEMDISK from the same project.
I don't think they'll quite do what you want; to bootstrap the ISO is one thing, but once it has
booted the booted OS would still have to be able to read/write the ISO it booted from just as if it was a real CDROM using its normal CDROM type drivers. Obviously that isn't going to work over the network without getting into the internals of the drive access and making the networked image look like a CDROM to whatever OS you boot. If you're allowing for booting DVDs, then you'd need nearly 5GBy of storage to hold the image, and if you tried to send it all to the booting system as a ramdisk image of the boot DVD you'd need 5GB RAM just for that. Much more than that if it was a dual layer disc.

Of course you can make custom netbooting installer / runtime images using PXELINUX et. al. for windows, linux, dos, et. al., but they're not going to be identical to the original CD/DVD ISO image for what you're booting.

Someone could hack up a USB to ethernet device to make it look like a USB to IDE CD/DVD bridge and have that become a networked CDROM acting like a USB CD/DVD drive transparently to the OS, though I am not aware that this has been done.

 

Red Squirrel

No Lifer
May 24, 2003
69,726
13,345
126
www.betteroff.ca
Hmm the usb thing could be neat. I'm not into low level driver programming otherwise I'd try to take this on myself. Basically would need to be a special driver that loads up but instead of reading from usb it would read from the pxe server (at this point probably a custom protocol running on that server, or another server once the pxe sequence booted that driver/os).
 

QuixoticOne

Golden Member
Nov 4, 2005
1,855
0
0
Yeah you'd have to have it speak TFTP, NFS, NBD, iSCSI, CIFS, or some such thing.

Of course if you just set up a virtual machine manager you can boot the guest OS from any one of a list of networked ISO images all day long quite easily. Of course the guest OS doesn't get full access to the system PCI/PCIE hardware like advanced GPUs and such, so that would limit the nature of programs you'd want to run that way.