Questions tagged [nfs]

Network File System (NFS) is a network file system protocol originally developed by Sun Micro systems in 1984, allowing a user on a client computer to access files over a network in a manner similar to how local storage is accessed. NFS, like many other protocols, builds on the Open Network Computing Remote Procedure Call (ONC RPC) system. The Network File System is an open standard defined in RFCs.

Original NFS version

The implementation details are defined in RFC 1094. Sun used version 1 only for in-house experimental purposes. When the development team added substantial changes to NFS version 1 and released it outside of Sun, they decided to release the new version as v2, so that version interoperation and RPC version fall back could be tested.

NFSv2

Version 2 of the protocol (defined in RFC 1094, March 1989) originally operated entirely over UDP. Its designers meant to keep the protocol stateless, with locking (for example) implemented outside of the core protocol. NFSv2 only allowed the first 2 GB of a file to be read.

NFSv3

Version 3 (RFC 1813, June 1995) added:

  • support for 64-bit file sizes and offsets, to handle files larger than 2 gigabytes (GB)
  • support for asynchronous writes on the server, to improve write performance
  • additional file attributes in many replies, to avoid the need to re-fetch them
  • a READDIRPLUS operation, to get file handles and attributes along with file names when scanning a directory
  • assorted other improvements.

At the time of introduction of Version 3, vendor support for TCP as a transport-layer protocol began increasing. While several vendors had already added support for NFS Version 2 with TCP as a transport, Sun Micro systems added support for TCP as a transport for NFS at the same time it added support for Version 3. Using TCP as a transport made using NFS over a WAN more feasible.

NFSv4

Version 4 (RFC 3010, December 2000; revised in RFC 3530, April 2003), influenced by AFS and CIFS, includes performance improvements, mandates strong security, and introduces a stateful protocol. Version 4 became the first version developed with the Internet Engineering Task Force (IETF) after Sun Micro systems handed over the development of the NFS protocols.

NFS version 4 minor version 1 (NFSv4.1) has been approved by the IETF and received an RFC number 5661 since Jan 2010. The NFSv4.1 specification aims:

  • To provide protocol support to take advantage of clustered server deployments including the ability to provide scalable parallel access to files distributed among multiple servers (pNFS extension).
  • to provide sessions and Exacely One Semantic (EOS)
1887 questions
10
votes
2 answers

Windows NFS Performance vs Windows File Sharing?

Has anyone set up NFS where both the server and the clients are all Windows? I am wondering: How Does Performance Compare to using builtin Windows file sharing (CIFS/SMB)? Can clients mount NFS shares as network drives just like with regular file…
Kyle Brandt
  • 83,619
  • 74
  • 305
  • 448
10
votes
2 answers

Automatic Kerberos Ticket Renewal (Indefinitely)

I am currently switching our environment from NIS over to Kerberos + LDAP. During this migration I've now run into the following situation. We mount our homes via NFS which obviously should also be kerberized. However since our users all login at…
Blackclaws
  • 296
  • 1
  • 2
  • 6
10
votes
2 answers

Why do some host volumes in Docker containers give the error "too many levels of symbolic links"?

I'm running docker with a host directory mounted: $ docker run -v /usr/groups/thing -ti imagename /bin/bash Files in /usr/groups/thing/foo are accessible: # ls /usr/groups/thing/foo a b c But files in /usr/groups/thing/bar are not: # ls…
Peter Westlake
  • 806
  • 2
  • 6
  • 17
10
votes
2 answers

Vagrant NFS share doesn't show updated file if size doesn't change

When mounting /vagrant over NFS, a changed file on the host is not refresh on the guest if the size doesn't changes. Quick update/typo are not immediately reflected unless I make enough modification for the size to be different. I've tried to set…
hlidotbe
  • 215
  • 3
  • 6
10
votes
1 answer

How to NFSv4 share a ZFS file system on FreeBSD?

Using FreeBSD 9, and created a ZFS file system like so zfs create tank/project1 zfs set sharenfs=on tank/project1 There are many howto's on setting up NFSv3 on FreeBSD on the net, but I can't find any one NFSv4 and when the NFS share is done with…
Sandra
  • 10,303
  • 38
  • 112
  • 165
10
votes
4 answers

Serving static files with nginx over NFS?

I have a website that is getting about 7k requests per seconds on a nginx server. This server both handles rewrites to an Apache server as well as serving static files, images, etc. directly. Static files is the biggest part in there with about 5k…
j0nes
  • 955
  • 1
  • 12
  • 27
10
votes
2 answers

What are typical NFS read/write rates

I have just installed a server that is sending HTTP video streaming files to a Web server over NFS and I want to make sure that I have the transfer speed optimized. But I don't know what sort of read/write rates are typical so I don't know if I…
Adam Salkin
  • 181
  • 1
  • 4
  • 8
10
votes
4 answers

Fault-tolerant NFS?

Probably a FAQ but I haven't found anything useful after a while of searching: Can I set up NFS in such a way that every single error (e.g. server CPU, hard disk, hd controller, network adapter, network cable, power supply) is masked without any…
Peter G.
  • 333
  • 5
  • 12
10
votes
1 answer

How do you mount an NFS Share in Windows 7?

I have FreeNAS exposing an NFS. How do I access this from Windows 7? I have enabled the "Services for NFS" within Windows Features.
Bob
  • 2,937
  • 5
  • 29
  • 32
9
votes
7 answers

Can't mount CentOS NFS share on Windows 10 - "Network Error - 53"

I have a CentOS 8 virtual machine (192.168.10.203) running nfs-server, and I'm trying to mount the share on my Windows 10 Pro x86_64 machine (192.168.10.10) I have installed the "Services for NFS" Windows feature), but when I run mount…
rst-2cv
  • 171
  • 1
  • 1
  • 9
9
votes
5 answers

Mount an NFS share as non root user in cli

My /etc/exports /root/backup 192.168.30.26(rw,sync,insecure,all_squash,no_subtree_check) While I mounting as non root user, mount -o v3 192.168.30.26:/root/backup /usr/backup/ I got mount: only root can do that Note: I saw option user in…
rajagopalx
  • 233
  • 1
  • 2
  • 5
9
votes
3 answers

NFS Caching Issue

We are having an issue that happens intermittently during a code deployment. NFS caches the files as they are read, but if a file is read during a code deploy it stays in a dirty state as if the file wasn't changed during the deploy. The only way we…
Michael
  • 333
  • 2
  • 3
  • 7
9
votes
6 answers

How should I copy my VM templates between vSphere datacenters?

Background/Environment Architecture: My current environment for $corp_overlords$ is set up in a hub-and-spoke model with a technologically well-endowed home office hub (SAN, bladecenter/bladesystem ESXi cluster, fiber internet connection, etc.)…
HopelessN00b
  • 53,795
  • 33
  • 135
  • 209
9
votes
2 answers

NFS Share with root for anonuid / anongid

I've exported a share from my server and set anonuid and anongid to be 0 (root). However, when I mount the share on the client, it doesn't appear my settings are working as I'm getting permission denied to folders within the share owned by…
Jason
  • 381
  • 1
  • 7
  • 20
9
votes
1 answer

NFS performance woes on Debian

I am having very inconsistent performance with NFS between two wheezy machines, and I can't seem to nail it down. Setup: Machine 1 'video1': Dual 5506 w/12GB ram, XFS on 8x3TB RAID6 exported as 'video1' from '/mnt/storage' Machine 2 'storage1':…
Kyle M
  • 93
  • 1
  • 4