This page provides information on how to set up an NFS server on Debian Linux, and NFS clients on Mac OS X and Windows. My motivation to use NFS is that Samba is just too damn slow when I use it with the Mac OS X Finder.
The following Debian packages need to be installed to be able to run an NFS server
- Configuration file reference
man 5 exports
- NFS on Linux Documentation
- Mount NFS share on Mac OS X
NFS and RPC
This file contains the definitions of the file systems that should be exported by the NFS server. For details about its format, see
Discussion of the options used:
- Path: The full path of the exported share must be specified
- NFS client specification: Address/Netmask specification can be used to restrict clients based on their IP address. Single hosts may also be specified, as well as other formats
- ro = Read-only
- insecure = Allow clients to connect with client ports above 1000. This is required at least for Mac OS X.
- no_subtree_check = Specifying this prevents a warning to be printed when the export is activated. I haven't thoroughly understood what this is for, but the man page recommends to use it: "[...] as subtree_checking tends to cause more problems than it is worth."
- all_squash: Force all access to be made with anonuid/anongid. If this is not specified, the client will connect with uid/gid local to the client; since this does not match any uid/gid on the server, access will fail.
- anonuid/anongid: Only numeric IDs can be used :-( I use the IDs for user/group = patrick/patrick.
After changes are made to
/etc/exports, they must be activated by either restarting the server, or updating the list of exported shares:
/etc/init.d/nfs-kernel-server restart exportfs -ra
Files in /etc/default/
The following files in
/etc/default are also involved in configuring various aspects of NFS. Currently I am happy with all default settings.
Network access may be additionally configured via the following files:
TODO: Find out whether this is really important, or whether the client specification in
/etc/exports is sufficient.
Mac OS X
In the Finder
- Select "Goto > Connect to Server"
- This will mount the share under
- Enter the following command to mount the share in a previously created directory
mount_nfs osgiliath:/var/samba/media/DVD /tmp/testnfs
- Unmount the share