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
17
votes
1 answer

NFSv4 User Mapping

This question seems to have been asked many times already, but the other answers somehow did not apply to me. Basically I just set up a new NFSv4 server and I am facing the classic problem where UIDs and GIDs do not match between server and client.…
matpen
  • 407
  • 2
  • 5
  • 10
16
votes
1 answer

What is the difference between Ceph and NFS when it comes to shared file storage?

Can someone explain to me what is Ceph compared to NFS? From a shared file storage perspective? What is the added value of using Ceph instead of NFS?
Basil A
  • 2,060
  • 3
  • 18
  • 18
16
votes
4 answers

Tuning NFS for minimum latency

How can I achieve low latency for NFS exports in order to e.g. have developers work nicely in Eclipse/Visual Studio with their workspaces mounted over NFS?
Robert Munteanu
  • 1,644
  • 5
  • 23
  • 41
16
votes
9 answers

Why pick a NAS over a "normal" NFS share?

From an end-user perspective, what is the difference between a NAS device and using NFS exports from a file server? They seem to accomplish the same end result. The difference between a SAN and other file storage is related (in my experience) to how…
warren
  • 18,369
  • 23
  • 84
  • 135
15
votes
4 answers

mount.nfs: an incorrect mount option was specified

I'm trying to mount an NFS volume on a centos 7.2 server: When I try to mount the NFS share point, this is the response I get back: [root@web1:~] #mount -t nfs nfs1.example.com:/var/nfs/home /home mount.nfs: an incorrect mount option was…
user99201
  • 287
  • 2
  • 8
  • 22
15
votes
2 answers

fstab entry to mount NFS with password

i need mount at boot a disk using NFS, to mount manually from console i type: mount //192.168.0.1/NASShare -o username=administrator,password=pass /mnt/NAS To /etc/fstab i added this line: 192.168.0.1:/NASShare /mnt/NAS nfs…
stecog
  • 985
  • 5
  • 11
  • 21
15
votes
3 answers

NFS with encrypted ubuntu home directory

I am having trouble getting NFS setup on with vagrant: On my local machine I have installed NFS: apt-get install nfs-common nfs-kernel-server And in my Vagrantfile set it to be used: config.vm.share_folder("v-root", "/vagrant", ".", :nfs =>…
user71736
15
votes
5 answers

Choosing a SAN technology for 100s of VM Web Servers

The Problem We have an issue with performance on an existing platform, so I'm turning to the hive mind for a second opinion on this. The performance issue so far relates to IOPS rather than throughput. The Scenario A blade centre of 16 hosts, each…
14
votes
2 answers

How to setup an NFS server that caches a network share?

User data is stored on two fairly large (>1 PB) OpenStack Swift storage clusters. Let them be Cluster A and Cluster B. In addition, there are several PoPs that need to interact with that data. Servers in these PoPs are effectively diskless, meaning…
mınxomaτ
  • 240
  • 2
  • 7
14
votes
2 answers

NFS I/O monitoring

I have a NFS mounted directory, and I'd like to monitor the I/O usage on it (MB/s reads and writes). What's the recommended way to do that ? This is the NFS client, I don't have access to the NFS server. I'm not interested in general I/O usage…
Gordon
  • 155
  • 1
  • 1
  • 5
14
votes
1 answer

How does NFS read cache work on Debian?

I am planning to use NFS to serve out many small files. They will be read very often so client side caching is crucial. Does NFS handle this? Is there a way to increase the client side caching in some way? ...or should I look at another solution?…
Ztyx
  • 1,385
  • 3
  • 14
  • 28
14
votes
2 answers

Win10 NFS Client a SAMBA Killer?

We finally got the last of our recalcitrant Windows 7 users to Windows 10 thanks to MS' recent withdrawal of support from the former, so the entire enterprise now is either Ubuntu 18.04 or Windows 10. Because Windows 10 has a NFS client, the…
ebsf
  • 298
  • 2
  • 9
13
votes
7 answers

Can't mount nfs volume - time out

I have an NFSv3 export from a Linux fileserver which used to mount fine. The fileserver had to go down for hardware maintenance. After bringing the server back up, the Linux client can no longer mount the nfs export. No configuration has changed on…
Nathan
  • 253
  • 1
  • 2
  • 9
13
votes
2 answers

How to do client side NFS failover in Linux?

I have a CentOS 6.3 client that needs to access NFS storage. There are two NFS servers that serve up the same content stored on a SAN with a clustered filesystem. How do I set up CentOS to failover to the backup NFS server if needed? When I…
Doug
  • 371
  • 2
  • 6
  • 15
13
votes
5 answers

Mounting a file system over the internet

I built a web application that runs on a virtual server for one of my customers. It includes the facility for them to upload files, but they now want to store those files on a server in their office. The easiest way to do this would be to mount…
Ben Holness
  • 944
  • 2
  • 10
  • 28