Best Options for NFS Mounts
by mezzmer from LinuxQuestions.org on (#59XQM)
I have very little experience with NFS shares, so I am looking for guidance as to the best options to use on my mount statement in /etc/fstab .
I have 2 shares defined in freenas, a RO share and a RW share. I have been mounting the shares with "default" options just to get things working, but now I am hoping to optimize my configuration.
The client system is Ubuntu derivative on a small home network, and my objectives are as follows:
READ ONLY SHARE
Read Only Share /etc/fstab
Code:freenas:/mnt/TANK/library /media/user/library nfs defaults 0 3Output of mount | grep -i freenas on client system with default options
Code:freenas:/mnt/TANK/share /media/user/library nfs ro,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=x.x.x.x,mountvers=3,mountport=608,mountproto=udp,local_lock=none,addr=x.x.x.x 0 0
Proposed Read Only Share /etc/fstab
Code:freenas:/mnt/TANK/library /media/user/library nfs ro,bg,rsize=131072,wsize=1024,soft,intr,timeo=150,retrans=3 0 0
READ/WRITE SHARE
Read/Write Share /etc/fstab
Code:freenas:/mnt/TANK/SHARE /media/user/SHARE/ nfs noatime,defaults 0 3Output of mount | grep -i freenas on client system with default options
Code:freenas:/mnt/TANK/SHARE on /media/user/SHARE type nfs (rw,noatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=x.x.x.x,mountvers=3,mountport=608,mountproto=udp,local_lock=none,addr=x.x.x.x)Proposed Read/Write Share /etc/fstab
Code:freenas:/mnt/TANK/SHARE /media/user/SHARE/ nfs rw,noatime,bg,rsize=131072,wsize=131072,hard,intr,timeo=150,retrans=3 0 0


I have 2 shares defined in freenas, a RO share and a RW share. I have been mounting the shares with "default" options just to get things working, but now I am hoping to optimize my configuration.
The client system is Ubuntu derivative on a small home network, and my objectives are as follows:
- Shares should not prevent the client system from booting/operating if FreeNAS is down
- Minimize the chance of data corruption on FreeNAS
- Maximizing I/O speed/performance
- Graceful/easy recovery from error conditions
READ ONLY SHARE
Read Only Share /etc/fstab
Code:freenas:/mnt/TANK/library /media/user/library nfs defaults 0 3Output of mount | grep -i freenas on client system with default options
Code:freenas:/mnt/TANK/share /media/user/library nfs ro,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=x.x.x.x,mountvers=3,mountport=608,mountproto=udp,local_lock=none,addr=x.x.x.x 0 0
Proposed Read Only Share /etc/fstab
Code:freenas:/mnt/TANK/library /media/user/library nfs ro,bg,rsize=131072,wsize=1024,soft,intr,timeo=150,retrans=3 0 0
READ/WRITE SHARE
Read/Write Share /etc/fstab
Code:freenas:/mnt/TANK/SHARE /media/user/SHARE/ nfs noatime,defaults 0 3Output of mount | grep -i freenas on client system with default options
Code:freenas:/mnt/TANK/SHARE on /media/user/SHARE type nfs (rw,noatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=x.x.x.x,mountvers=3,mountport=608,mountproto=udp,local_lock=none,addr=x.x.x.x)Proposed Read/Write Share /etc/fstab
Code:freenas:/mnt/TANK/SHARE /media/user/SHARE/ nfs rw,noatime,bg,rsize=131072,wsize=131072,hard,intr,timeo=150,retrans=3 0 0