Greetings all. I've searched a lot on have to turn a USB drive into a PXE server and come across a PXE stuff and a lot of USB stuff, but nothing that I need. My apologies for the long message!

First, the short version.
I want:
A bootable USB memory that, with the click of script or automatic start-up, will configure and start the machine it's attached to as a PXE server with a minimum of fuss.
My problem:
I haven't succeeded yet and have started hitting my head against the wall.
My request:
How can I achieve what I want?

The long version.
At work we often boot a Knoppix CD from a USB-CDROM drive on any old system laying around, manually input the Knoppix Terminal Server settings, start it, test our client machine(s), then shut down and pack away the USB-CDROM. We don't want a dedicated PXE server taking up space in our lab.

I want to forgo the USB-CDROM and constant setup by running a bootable USB memory that can turn pretty much any system into a PXE server. I once installed Ubuntu to USB with persistency but, upon connecting and booting it on a different machine, the network settings became corrupt. I can't remember the specifics, but a new network card was detected and assigned, and the PXE settings that were attached to the previous system's network card were lost.

By installing Knoppix on USB through Pen Drive Linux's "Universal USB Installer"
( ) I get a read only Knoppix system which won't confuse the last server machine's settings with the current machine's. This is awesome; I don't want any persistency that might corrupt things later down the line.

However, that still leaves having to manually configure and start the Knoppix Terminal Server (and most workers in my company either don't know how or forget how to do it). I can save anything in the same USB memory without effecting the Knoppix boot, so I'm thinking to store pre-configured files and a scrip there that the co-workers can click and forget about.

But what files need to be modified?

To attempt to find which files are modified I booted the system, waited a few minutes, then setup and started the Knoppix Terminal Server. From there I was able to search for the most recently modified files (in the hopes of finding and backing up the files which were automatically configured by the Knoppix Terminal Server). Later I can copy these configured files back into their respective places on a fresh boot. For interest's sake, I ran:

# find / -mmin -1

that showed all the changed files within the past minute).

Here is my script labeled

# Copy setup files
sudo mkdir /tmp/tftpboot
sudo cp -p -r /mnt-system/pxe/etc/network/* /UNIONFS/etc/network
sudo cp -p -r /mnt-system/pxe/etc/dhcp3/* /UNIONFS/etc/dhcp3
sudo cp -p -r /mnt-system/pxe/etc/sysconfig/* /UNIONFS/etc/sysconfig
sudo cp -p -r /mnt-system/pxe/etc/default/* /UNIONFS/etc/default
sudo cp -p /mnt-system/pxe/tftpboot/pxelinux.cfg/* /tmp/tftpboot
sudo cp -p -r /mnt-system/pxe/var/run/* /var/run

# Starting PXE server...
sudo /etc/init.d/knoppix-terminalserver start

As you can see, I've retained the file and folder structure in my copy source (/mnt-system/pxe ) and can copy back to the files' respective places.

The problem with this is that there were far too many files modified or created by setting and starting the Knoppix Terminal Server for me to sort through to find every file I needed to back up (the above script is a work-in-progress). I guess I didn't back them all up because, after rebooting and executing the script, the Knoppix Terminal Server appeared and it had to be configured; there was no IP address or Gate Way or any other settings preserved.

Apologies for the essay; I hate to make you read so much. I really want to show I'm not asking for someone to do all the work for me; I have been at this for while now, but with limited success. Any help (a solution to my technique, a better method, a recommendation for something other than
Knoppix) to get a PXE-ready USB bootable memory would be a-w-e-s-o-m-e.