What is KNOPPIX®?
KNOPPIX is a Debian based bootable CD with a collection of GNU/Linux software, automatic hardware detection, and support for many graphics cards, sound cards, SCSI and USB devices and other peripherals. KNOPPIX is made by Klaus Knopper, you can learn more about KNOPPIX at www.knoppix.org
Well, I like Knoppix very much, so much that even though I'm a Debian developer who runs pure Debian distros on his machines, when I have to make tests on new machines or run linux on machines that are not mine, I love to use Knoppix for this. In fact, one of the things I like the most is the Knoppix terminal server, I like it so much that I set it up on my main Debian server so that I can start Knoppix out of the net whenever I want, and it really rocks.
However there was something I didn't like about Knoppix terminal server, and it is the fact that you need NFS to serve the cd filesystem to the clients, and I really dislike NFS, so... I thought, would it be posible to use an unmodified Knoppix cd image and still boot it out of the net without using NFS? The answer is YES! And while doing this, you can even have a Windows to act as a Knoppix terminal server! I would recommend using a Debian or any other Linux, of course, but... Anyway, the thing is that I had some experience in having some diskless clients boot Debian out of the net and using a smb filesystem as their root filesystem, so I tried to apply that to Knoppix and I have managed to produce initrds for Knoppix 3.7, 3.8.1 and later that allow you to boot Knoppix out of the net using smbfs in 3.7's 2.4.27 kernel and cifs in the 2.6.X kernels of the Knoppix 3.8.1 and later versions, all of them allow us to avoid the NFS and use a typical smb share.
So... lets go straight to the point, what you need to setup is a dhcp server like the one from ISC, that tells machines to boot out of filename "pxelinux.0"; you also need a tftp server (I like atftpd) set up with its root pointing to all of our boot files, and also a smb/cifs server (like Samba or even a Windows with a shared folder) and you are done. BTW, for a Windows server you can use the RIS server and for a Windows client you have a free dhcp,tftp,... server here).
The files you need:
Well, I think that's all, of course that I could explain how to set up all this, but Richard J. Nelson has started a wiki page to explain it here, also, you can find info on that on the pxelinux homepage, or you can take it out of the Knoppix terminal server by starting it out of the Knoppix CD and having a look at /tftpboot and /etc looking for the config of the dhcp and tftp servers, then all you need is to replace its initrds with mine and to edit the configuration to fit your cifs setup. Also, if somebody cares to write something on how to configure this, I don't have any problem in linking it from here.
Just one more thing, the initrds I provide have drivers for the most popular network cards, if your card driver is not there you'll have to edit the image adding the driver that you will find in the /lib/modules/ dir of your Knoppix to it.
I hope you enjoy this stuff, have fun! Regards, Manty.