[mdlug] stale NFS file handles - achille's heal of linux?

Jeff Hanson jhansonxi at gmail.com
Sat Jun 14 13:54:51 EDT 2008


On Sat, Jun 14, 2008 at 10:37 AM, Dean Durant <mdlug at sbcglobal.net> wrote:
> Hello, can anyone tell answer this question:   stale NFS file handles, is there an equivalent problem in every OS or just those that rely on NFS?     Is there a better way to share files over a network?
>
> I had a situation recently where there was a 38 - hour job running on a cluster.   We needed to add a SCSI disk to the file server (separate from the cluster).   The users were screaming about space for their results.    We had to reboot the file server to add the disk.   All the NFS mounts were dead and somehow the big job got killed.    This turned out to be very bad and the CAE manager who hates linux blamed it all on linux.   (The CAE workstations, the file server, and the cluster all run linux).   I didn't know what to say.   The NFS stale file handle issue seems to be a sticky one.

I haven't encountered that yet but I don't have NFS exports for very
long and I'm the only one using my server.  Many of mine link to
dm-crypt volumes and I have to shut down NFS in order to close the
volume at the end of the day.  I haven't heard of the stale problem
before but I think I understand it from reading this:
http://www.cyberciti.biz/tips/nfs-stale-file-handle-error-and-solution.html

I can't imagine how this could be avoided when shutting down the
server with active clients.  Even if it was a hot-plug system and
using LVM I think you would have to unmount the volume to add the new
physical device to the volume group and expand the logical volume.  A
workaround might have been to put the drive in a different system and
bridge the volume with the existing ones across the network, then move
it to the other system when convenient.  I'm not aware of a bridging
solution that could do this but it probably exists.  It seems like a
redundant storage system with virtualized volumes would be needed -
basically another layer of storage abstraction.  You could then shut
down a node, upgrade it, add it back to the pool, then repeat with the
other redundant nodes.



More information about the mdlug mailing list