I'm in the process of setting up a compute cluster with the intent of using it for some parallel computing experiments. I have a single executable which I'd like to run on this cluster.
Due to operational constraints on said cluster I can only deploy this executable as a PXE boot image. Unfortunately, the only "ready-made" images I've been able to find are installation ones intended to install a particular distro. They don't particularly appear easy to modify.
Can someone perhaps provide some pointers as to how I could go about creating a pxelinux image that loads the linux kernel and subsequently run an executable?
Best Answer
Using ubuntu-18-x86_64-initrd.gz:
Now copy your executable, required shared libraries, and other files needed by your executable into
image/
. Editetc/inittab
. You probably want to remove::sysinit:
. Change::respawn:
to be an invocation of your executable.Copy
initrd-bionic-foo.gz
to your tftp server. Sample pxelinux.cfg entry: