Using NFS on a client

The explicit mount process

The following occurs when an administrator mounts a resource by using the command line:

mount -F nfs -o ro,soft dancer:/usr/src /usr/src/dancer.src

  1. The generic mount (/sbin/mount) command verifies that the mount point is a full pathname and that there is a file /usr/lib/fs/nfs/mount. /sbin/mount then passes all the relevant arguments and options to /usr/lib/fs/nfs/mount, which takes control of the process.

    NOTE: When we say mount from now on in this section, we will be referring to the NFS-specific mount command (/usr/lib/fs/nfs/mount).

  2. mount then opens /etc/mnttab and checks that the mount was not previously done.

  3. mount parses the argument dancer:/usr/src (server:path) into host dancer and remote directory /usr/src.

  4. mount calls dancer's rpcbind to get the port number of dancer's mountd.

  5. mount calls dancer's mountd daemon and passes it /usr/src, requesting it to send a file handle (fhandle) for the directory.

  6. The server's mountd daemon handles the client's mount requests. If the directory /usr/src is available to the client (or to the public), the mountd daemon does a NFS_GETFH system call on /usr/src to get the fhandle, and it sends it to the client's mount process.

  7. mount does a mount(2) system call with the fhandle and /usr/src/dancer.src.

  8. The client kernel looks up the directory /usr/src/dancer.src and, if everything is in order, ties the file handle to the hierarchy in a mount record.

  9. The client kernel looks up the directory /usr/src on dancer.

  10. The client kernel does a statvfs(2) call to dancer's NFS server nfsd.

  11. The mount(2) system call from step 7 returns.

  12. mount opens /etc/mnttab and adds an appropriate entry to the end, reflecting the new addition to the list of mounted files.

  13. When the client kernel does a file operation, once the resource is mounted, it sends the NFS RPC information to the server, where it is read by one of the nfsd daemons to process the file request.

  14. The nfsd daemons know how a resource is shared from the information sent to the server's kernel by share. These daemons allow the client to access the resource according to its permissions.

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 22 April 2004