= NFS HOWTO = I have put this HOWTO together from various sources which I will list at the end. Discuss here is the process of setting up a server and using a client. I'm not going to get very wordy here as this is really a reference for myself. However, if you want to contact me concerning this document, follow the link at the bottom of this page for my contact info. == Getting the Packages == On Debian derived systems you can install the server packages as shown below: {{{ sudo apt-get install nfs-kernel-server nfs-common rpcbind }}} == Configuring portmap == '''Do not bind portmap to the loopback. If you need to reconfigure the portmap run the first of the next two commands or edit {{{/etc/default/portmap}}} by hand then restart the servers.''' {{{ sudo dpkg-reconfigure portmap sudo /etc/init.d/portmap restart }}} == Configuring NFS == Edit the {{{/etc/exports}}} file. The following line will permit all 254 C class addresses on the private net specified to access this mount. {{{ /home 192.168.1.0/24(rw,no_root_squash,no_subtree_check,async,insecure) }}} This line will permit all 65534 C class addresses on the private net specified to access this mount. {{{ /home 192.168.0.0/16(rw,no_root_squash,no_subtree_check,async,insecure) }}} You must execute the following commands after any edit to the {{{/etc/exports}}} file. Reread the {{{/etc/exports}}} file. {{{ sudo exportfs -ra }}} Restart the nfs server. {{{ sudo /etc/init.d/nfs-kernel-server restart }}} '''Note: See [[ipcalc]] for details of determining the network parameters.''' == TCP Wrappers == In the {{{/etc/hosts.deny}}} file deny everything. {{{ ALL: ALL: \ spawn ( DATE=`date`; /bin/echo $DATE %d %u %c >> /var/log/wrapper-deny.log ) }}} In the {{{/etc/hosts.allow}}} file add {{{portmap, mountd, nfsd, lockd, rquotad, statd}}}. {{{ ALL: 127.0.0.1 portmap, mountd, nfsd, lockd, rquotad, statd, sshd, cvs : \ 127.0.0.1, \ some.domain.org, \ some.domain.net : \ spawn ( DATE=`date`; /bin/echo $DATE %d %u %c >> /var/log/wrapper-allow.log ) }}} == Installing Just the Client Software == {{{ sudo apt-get install portmap nfs-common }}} == Manual Mounting == First make a mount point on your remote machine where you want the server mount to be located. {{{ cd / sudo mkdir -p /exports/{host}/home }}} The following will mount your remote {{{/home}}} directory to {{{/export/{host}/home}}} on the client machine. {{{ sudo mount -t nfs {host}.mydomain.org:/home /export/{host}/home }}} You may not need the {{{-t nfs}}} in the above command. '''You will need to restart the servers using the commands below:''' {{{ sudo /etc/init.d/portmap restart sudo /etc/init.d/nfs-common restart }}} == Auto Mounting == Install the autofs package: {{{ sudo apt-get install autofs }}} Edit the {{{/etc/auto.master}}} file adding the following line. {{{ /exports/{host} /etc/auto.{host} --timeout=60 }}} Create the {{{/etc/auto.{host}}}} file and add the lines for your mounts. {{{ someuser -rw,soft,bg,intr {host}.mydomain.org:/home/someuser iso -rw,soft,bg,intr {host}.mydomain.org:/extra0/iso Video -rw,soft,bg,intr {host}.mydomain.org:/extra1/Video }}} I make a directory path at the root system named {{{/exports/{host} }}} where host is the host name of the machine I am mounting shares from. {{{ sudo mkdir -p /exports/{host} }}} == Boot Mounting == Edit {{{/etc/fstab}}} adding the following line: {{{ host.mydomain.org:/home /exports/{host}/{home} nfs rw,bg,intr 0 0 }}} Look at the [[http://linux.die.net/man/5/nfs|nfs manual page]] for other mounting options. To test your edit type in a terminal the following command: {{{ mount /exports/{host}/{home} }}} == Useful Links == http://ubuntuforums.org/showthread.php?t=249889 http://tldp.org/HOWTO/NFS-HOWTO/ https://help.ubuntu.com/community/SettingUpNFSHowTo http://www.linux-consulting.com/Amd_AutoFS/autofs-5.html