Archive for 'NFSv3'

Yet another good reason to switch to NFSv4!

There are currently two main NFS protocol versions in mainstream use. The first is version 3, which was introduced in 1995 as part of RFC 1813. NFSv3 implementations use separate daemons to implement the locking (rpc.lockd), status (rpc.statd), mount (rpc.mountd) and port assignments (portmap) features required by the protocol. NFSv4, which was introduced in 2003 […]

Documentation on the Solaris NFS client and server implementations

My good friend Clay sent me a link to Vallish Guru’s blog, which contains a number of PDFs that describe the Solaris NFS client and server implementations. I read through the NFSv3 RFC and Brent Callaghan’s awesome book on NFS a while back, and both of these resources came in handy while I was reading […]

Monitoring NFS operations with nfswatch

I support a number of NFS clients, and periodically need to see which types of NFS operations are being performed. The nfsstat utility works pretty well for this, but sometimes I want to get a broader view of what is going on. When these situations arise, I like to fire up the nfswatch utility which […]

Interesting NFSv3 errors

While reading through RFC 1813 (NFSv3 RFC), I came across the following interesting NFS error: NFS3ERR_JUKEBOX The server initiated the request, but was not able to complete it in a timely fashion. The client should wait and then try the request with a new RPC transaction ID. For example, this error should be returned from […]

Viewing NFS client operations

While reading through the NFS RFCs this week, I decided to write nfsclientstats.pl to view NFS operations by process: $ nfsclientstats.pl process read write readdir getattr setattr lookup access create remove rename mkdir rmdir mkdir 0 0 0 380 0 190 0 0 0 0 190 0 mv 0 0 0 189 0 1890 2079 […]