How to configure reasonable timeout for nfs?

27,262

timeo and retrans are effective only on soft nfs not on hard nfs. Need to change the /etc/fstab like this:

<remote-host-ip>:/path/to/origin /shared/point nfs soft,timeo=30 0 0

timeo is timeout value of 30 deciseconds (3 seconds). there is also the retrans means how much retries to do in case of error.

then in case of server or service down, an error occurred after 9 seconds.

Share:
27,262
SHR
Author by

SHR

Updated on September 18, 2022

Comments

  • SHR
    SHR almost 2 years

    I have nfs mount to a directory on remote machine. When the remote machine is down or disconnected, any command on the nounted nfs (such as: ls, or open file) is stuck.

    I want it to just fail in a few seconds if the nfs dir is not available.

    How can I do it?

    in /etc/fstab I see

    <remote-host-ip>:/path/to/origin /shared/point nfs defaults 0 0
    

    When I run mount I see:

    <remote-host-ip>:/path/to/origin on /shared/point type nfs4 (rw,relatime,vers=4.1, rsize=1048576,wsize=1048576,namelen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=<my-ip>,local_loc=none,addr=<remote-ip>)
    
    • Michael Hampton
      Michael Hampton over 6 years
      What do you consider a "reasonable" timeout?
    • SHR
      SHR over 6 years
      @MichaelHampton less than 3 seconds...
  • Andrew Henle
    Andrew Henle over 6 years
    Are you certain that all the applications that use this filesystem are properly coded to handle the IO errors that a soft NFS mount will return? If not, are you capable of accepting silent data corruption? Are you running binaries from the NFS-mounted filesystem? Are you prepared to handle applications crashing because of network hiccups? Soft-mounted NFS filesystems are EVIL unless you really know what you are doing. Fix the reliability issues, don't ignore them.
  • TheFiddlerWins
    TheFiddlerWins over 4 years
    As Andrew said above, this is a dangerous thing to do. Make sure you understand the implications!
  • Abhilash Kishore
    Abhilash Kishore about 3 years
    Why would anyone ever use deciseconds? What was the designer thinking?