The Network File System is used, obviously, to share files between machines on a network. The cool part about NFS is that it's designed such that one machine can mount shares from another transparently, and treat them like local files.
A couple of things have to happen for this to take place, though. First is the appropriate services have to be running on the server machine: these are portmap(8), nfsd(8), and mountd(8). Second is the server has to explicitly “export” a filesystem tree to the client, which is accomplished via exports(5) file in /etc.
The first part of the equation is handled by installing the tcpip1.tgz package (from the N series) and letting rc.inet2 do its thing. /etc/exports is a bit more fun.
Suppose I have a directory of images on battlecat.tdn that I want to mount on ninja.tdn. On battlecat, I'll need a line in /etc/exports that looks something like this:
/var/media/images ninja.tdn(ro) |
Then on ninja, I can simply
# mount -t nfs battlecat.tdn:/var/media/images /mnt |
to mount the images directory as /mnt locally. Unfortunately, I've forbidden myself from writing to the shared directory-- that “(ro)” bit in battlecat's /etc/exports line is an option meaning “read-only”. Any such options need to exist after the client's name, inside parentheses, in a comma-separated list. For instance:
/var/media/images ninja.tdn(rw,no_root_squash) |
The “rw” is obviously “read-write”-- subject to user and group id mapping (see the exports(5) man page for an explanation), users on ninja are allowed to write to the shared directory. I don't like squash, so I think I'll leave it up to that man page to explain that one to you; if you plan on doing much with NFS, exports(5) will be your best friend. Might as well get comfy, right?