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
7
votes
4 answers

Default rsize and wsize for nfs v3

The /etc/fstab entry used by my nfs client is {server_ip}:/home/{server_user}/{server_path} /home/{client_user}/{client_path} I wanted to know the rsize and wsize values used by default. I wanted to try out some benchmarks with various values…
letronje
  • 429
  • 1
  • 6
  • 17
7
votes
2 answers

Mac OS X client crashes while mounting and writing to Linux server via NFSv4

We are a Linux shop with about 30 Macs to support. We have our Leopard and Snow Leopard systems set up with LDAP authentication and automounted NFSv3 home directories so our staff have the same login and file whether they use OS X or Ubuntu. The…
Jeff Strunk
  • 2,127
  • 1
  • 24
  • 29
7
votes
3 answers

OpenLdap synchronize home directory between client and server

I have recently setup Ubuntu ldap client authentication on karmic and lucid desktop clients and the ldap server is running on an 10.04 LTS server and this is the link I followed for client setup and probably this also works for 11.04. I could able…
user53864
  • 1,723
  • 11
  • 37
  • 66
7
votes
2 answers

Getting ZFS per dataset IO statistics (or NFS per export IO statistics)

Where do I find statistics about how IO is divided between zfs datasets? (zpool iostat only tells me how much IO a pool is experiencing.) All the relevant datasets are used through NFS, so I'd be happy with per export NFS IO statistics also. We're…
jkj
  • 592
  • 4
  • 12
7
votes
1 answer

NFS - Detecting remotely created files programmatically?

I'm trying to monitor an NFS share and detect the creation of a file by a process running on a remote system. The problem is that the detection isn't working after the file has been created, my script still thinks there's no file. If someone…
Daniel DeVoe
  • 88
  • 1
  • 4
7
votes
2 answers

How to set i/o priority for nfs client processes?

The configuration is: A linux server and a nas box (netgear) acting as nfs server. It is easy for a single process on the linux server to use all i/o bandwidth by simply copying a file from the nfs share to the nfs share. The i/o channel is jammed…
Moritz Both
  • 657
  • 9
  • 17
7
votes
4 answers

How to measure IOwait per device?

I have a server, which exports home directories over NFS. They are on software RAID1 (/dev/sdb and /dev/sdc) and the OS is on /dev/sda. I noticed that my %iowait as reported by top and sar are relatively high (compare to the rest of the servers).…
grs
  • 2,235
  • 6
  • 28
  • 36
7
votes
1 answer

Determine if file on NFS share is in use

Scenario: We are using an NFS share to allow clients to upload raw video material. The files are then polled from the directory on the (NFS) server in order to be processed. Since we do not want to process files which have not finished uploading…
Axel Knauf
  • 1,600
  • 1
  • 10
  • 12
7
votes
3 answers

How can I prevent vanishing error when using rsync with an nfs mount?

I'm in the process of moving files from an Ubuntu server to a Snow Leopard server. The Ubuntu server has an NFS share of around 6TB which I'd like to clone to the Snow Leopard server. I mounted the nfs share on the Snow Leopard server and then…
Evan
  • 227
  • 1
  • 3
  • 8
7
votes
3 answers

How to mount multiple folders with nfs4 on centos?

I'm trying to get nfs4 working here. Machine 1 (server) I have a folder and in it 2 other folders I'm trying to share independently. /shared/folder1 /shared/folder2 Problem is, I can't seem to figure out how to mount the folders independently on the…
stormdrain
  • 1,439
  • 7
  • 28
  • 52
7
votes
4 answers

When specifying an NFS mountpoint in /etc/fstab, What is the "addr" option for?

When specifying an NFS mountpoint in /etc/fstab, what's the purpose of the addr option? For example: 192.168.1.5:/home /home nfs rw,addr=192.168.1.5 0 0
Lorin Hochstein
  • 5,028
  • 15
  • 56
  • 72
6
votes
6 answers

Is there a way to do something like LVM over NFS?

I realize that since NFS is not block-level, LVM can't be used directly. However: is there a way to combine multiple NFS exports (from, say, 3 servers) into one mount point on a different server? Specifically, I'd like to be able to do this on RHEL…
warren
  • 18,369
  • 23
  • 84
  • 135
6
votes
1 answer

How to sync up UID/GID across Linux Systems

I have a large NFS shared storage system in my equipment rack. My operation is bringing up a number of other Linux systems that use the NFS system as the primary production storage. Sometimes the storage is shared and also I want to be able to…
AlanObject
  • 662
  • 2
  • 9
  • 20
6
votes
1 answer

NFS and all_squash confusions

For some temporary data migration task, I need to set up an NFS server. The UIDs on both machines do not match, so I somehow need to avoid permission issues. Luckily, I thought, there's an all_squash option. It says: all_squash: Map all uids and…
qqilihq
  • 201
  • 1
  • 2
  • 7
6
votes
2 answers

Does it involve network to copy a file within a NFS share?

I am assuming the following ways to copy a file with in a NFS share: Process 1: The client requests for the data to be copied from NFS share (if cache is not there) and the chunks of data are asynchronously copied to memory of the NFS client which…
GP92
  • 681
  • 2
  • 9
  • 27