K.Mandla's blog of Linux experiences

Adventures with cross-distro NFS

For some reason, in building the 2.6.24 kernel for my Thinkpad using Crux, I omitted kernel support for NFS. That might have been an oversight on my part (I sometimes get overzealous in disabling things), but it might also be that I was hoping to find out if I needed it there or not.

Well, I did. Trying to mount the shared folder across my network was yielding “mount.nfs: No such device” errors, even though I could mount it from another Arch machine, a 64-bit Ubuntu machine, and so forth. Eventually it was the Gentoo forum that gave me the idea (or maybe reminded me) to check my kernel, and of course that was the problem.

Rebuilding took only about five minutes (it seems to take less time to add something than to strip it out or rebuild it entirely) at 550Mhz, and after rebooting, it mounted perfectly.

It is odd, though, that having the mounted drive in /etc/fstab caused it to try to mount before the portmap and nfs daemons were started by rc.conf. I don’t know if that’s normal or if it’s something I have misarranged, but the easiest way to fix that was to edit /etc/fstab and make the mounted drive an elective mount point — in other words, allow any user to mount it manually, but not to mount it at startup.

If you’re wondering, that means my fstab line for that drive looks like this:

192.xx.xx.xx:/media/modular /mnt/modular noauto,users 0 0

That was an issue because my startups were hanging for about 30 seconds while it tried to mount that shared drive, but couldn’t, and then continued to start. I don’t know why Crux is doing that; no doubt I have a setting somewhere that needs help.

NFS is magical, by the way. If you have more than one Linux machine and you want to transfer files or stream audio/video between them, I highly recommend it. There’s a primer for Ubuntu users here, and for Crux or Arch fans, the Arch wiki has an excellent setup page. It’s worth the short time it takes to arrange. Trust me on that one.