-   Linux - Networking (
-   -   PXE booting Knoppix - NFS problem (

royceH 11-26-2006 05:58 PM

PXE booting Knoppix - NFS problem
I am trying to set up a PXE server for Knoppix. The server already serves DSL(the variant that runs completly from RAM), and floppy images for DOS. This is the first time I've used NFS for booting, although the DSL has been using it for file sharing.

In DSL, and if I boot Knoppix off the CD, I can use the command:

sudo mount -t nfs /mnt/nfs
to mount the location of the Knoppix files as well as read and write them, so there isn't a problem with the NFS server.

however, if I add the following to the pxelinux configuration

LABEL knoppix
KERNEL KNOPPIX/boot/isolinux/linux
append nfsdir= nodhcp lang=us ramdisk_size=100000 init=/etc/init apm=power-off nomce vga=791 xmodule=fbdev initrd=KNOPPIX/boot/isolinux/minirt.gz BOOT_IMAGE=knoppix

(which is mainly copied from the Knoppix PXE server) Knoppix will start booting, but will search for the main image (stored on the NFS share) and not find it. If the CD is in the drive at startup the PXE booted machine will find the main image on the CD and continue booting from that.

If I use:

LABEL knoppix
KERNEL KNOPPIX/boot/isolinux/linux
rem append root=/dev/nfs nfsroot= ip=auto

Which I am given to understand would mount / as the listed folder, produces a kernel panic error, saying the filesystem can't be synced, and that /dev/nfs dosen't exist.
My guess is that the kernel isn't comunicating with the NFS server corectly. Also, becuase my NFS server is Cygwin wich only serves version 2, not version 3 this might be cuasing the kernel greif.

Realy, I'm happy with the kernel mounting anything from the NFS server, and working around this. I get the feeling it's something stupidly simple

eendoe 12-01-2006 02:20 AM

run the configurator that comes with knoppix

check what it put in /tftpboot/pxelinux.cfg/default

this may help

Good Luck

royceH 12-05-2006 09:23 PM

This I will do, but not untill tomorow. I'm still of the opinion that it has to do with the NFS server which means that it's almost definatly somthing else

royceH 12-06-2006 07:46 PM

After feriting about in the /tftpboot/ folder of the CD driven knoppix, I have discovered that I need a diferent initrd file. I happly splaped that onto the NFS server along with the code I found in the pxelinux.cfg/defualt file, which was slightly diferent from what I had so, now I'm using:
LABEL knoppix
KERNEL KNOPPIX/boot/isolinux/linux
APPEND secure nfsdir= nodhcp lang=us ramdisk_size=100000 init=/etc/init apm=power-off nomce vga=791 initrd=KNOPPIX/boot/isolinux/test.gz quiet BOOT_IMAGE=knoppix

And now I have an all new error message!

Found network device(s) handled by tulip.ko.
Can't NFSmount KNOPPIX filesystem, sorry.

I'm still running with the NFS server not interacting correctly with the Knoppix kernel

royceH 12-07-2006 06:39 PM

It ocured to me that I might get more helpfull errors if I tryed mounting the NFS share using the limited shel that Knoppix provides after a failue. using the command

mount -t nfs /mnt/

(creating folders isn't supported in the limited shell) produces an error similar to data missing or invalid input (sorry I don't have the exact error, I only have one machine now it's the one I using to post this and boot to PXE) I tryed adding the nfsvers=2 option, becuase that's all the server produces, but was given the unkown option error.

royceH 12-10-2006 01:47 PM

I have another idear.
Is it posible to boot using a boot flopy image (such as tomsrtbt or the boot flopie images avalible fron then NFS mount and run the knoppix system?
Thoughts anyone?

royceH 12-10-2006 02:37 PM

the error from trying to mount NFS shares in the limited shell is:
NFS_read_super: missing data argument
does anyone know what this actualy means, and where I should be looking for a solution?

royceH 12-10-2006 03:04 PM

after quite a bit of Googling about my NFS error, I have found a Korean forum which Google helpfully translates:

From the quasi english that the traslator produces, I have gathered that this problem can be cuased by the /etc/exports file on the NFS host, but not what to do to it to fix the problem. I think that I will have to boot back to knoppix and have a look at the exports file that it produces.

royceH 12-11-2006 02:57 PM

I have replaced my cygwin /etc/exports file with /tftpboot/exports from Knoppix, then changed the folder that it pionts to ( rather than
This has made no diference what so ever

I have also found that the miniroot.gz that comes with knoppix (and my test.gz that I took from the CD run terminal server) are in fact tiny liniux enviroments that are booted from vurtual floppy disks and mount the knoppix files (on CD and NFS respectivly) then hand controll over to Knoppix, so my idear with vurtual Floppies served through Memdisk is already built into the Knoppix system.

This however, still leaves me with the problem that the miniroot.gz can't mount anything from my NFS server, even though the fully booted Knoppix can. What I think is happening is that the kernel is expecting NFS version 3, and has no backwards compatablity to mount version 2 untill the rest of system is booted. The SMB version (from also encounters a similar problem, but it can't mount the SMB share becuse it requires authentication, even though I pass it a username and password as such:

which, once again works once the main system has started.

royceH 12-11-2006 03:35 PM

On a side note I have never compiled my kernel nor kernel modules, however the file that apears to be causing the problem is NFS.ko (the NFS kernel module that comes with Knoppix).
I have no idear what so ever how to go about compiling a new NFS.ko with version 2 backwards compatablity. If anyone knows if there is a precompiled one for the knoppix 4.0 kernel (2.6.4 I think) avalible for download, that would help emensly

royceH 12-11-2006 05:34 PM

If I boot up with the samba minirt, and get dropped into the limited shell, I did wonder if attempting mount the share would give me the information that I need to work this out. So, entering the command:

mount -t cifs //user:Pass@ /tmp
mount -t cifs // /tmp

gives the error "CIF VFS: cifs_mount failed with return code = -22"
also, changing this to

mount -t cifs // /tmp -o user=user,pass=pass
returns "mount: Unknown option 'user=user' ignored"

A quick google reveils that return code -22 indicates that the user authentication through the domain controller has failed, and the option user=<user> is widly accepted as being completly fail safe.

eendoe 12-13-2006 12:50 AM

Another suggestion
I remembered when I set this up that the nfs exports needs to be called /cdrom
(must be hardcoded into the boot images for later use).

Go back a few steps and change your export to /cdrom and see if this helps (I also did not use secure option for initrd)

Good Luck

royceH 12-13-2006 03:31 PM

A wondorusly simpile somution to a diobolicaly dificult problem!
Pity it dosnn't work. Changing the nfs share to made no diference:

mount -t nfs /mnt/
mount -t nfs /mnt/
mount -t nfs wibblewibbleIamatree /mnt/

all produce the error "NFS_read_super: missing data argument". After I discovered that last one, I tryed unpluging the network, and repetting which produced identical results. What ever the problem is, it's centered around the PXE or the kernel/intrid served by the PXE not driving the network correctly. I tryed again on another machine (admitedly they where both HPs) witch did exactly the same thing. Is there an issue here with knoppix 4.0 or with it's kernel? should I be using 5.0? or an earlyer version?

royceH 12-13-2006 04:17 PM

I fnialy worked out what the korean site was saying to do to the /etc/exports file: add "/cdrom access = mount" to the bottom. After I tryed this without success, I turned my attention to the initrd file. If this was built at setup, and one of the options was to set what network cards to probe for, what if I set it up to probe for every single card it could, that would work wouldn't it? No. And neither would using the misteriously appearing kernel, referenced in the pxeconfig file, produced when the intrid file was generated.

royceH 12-13-2006 04:26 PM

I have just spotted somthing that cheared me up. Go to the korean link above (
and click on "FAQ" in the menu up the top. There's only the one FAQ, check out question number one on it. Makes you wonder just what the koreans are using their embedded linux for exactly :D

All times are GMT -5. The time now is 11:40 PM.