Yeniden başlatma sırası önemlidir. İstemcilerden sonra sunucuyu yeniden başlatmak bu duruma neden olabilir. Eski NFS tanıtıcısı, istemcinin açık bir dosyaya sahip olduğunu, ancak sunucunun artık dosya tanıtıcısını tanımadığını gösterir. Bazı durumlarda, NFS zaman aşımından sonra veri yapılarını temizler. Diğer durumlarda, NFS veri yapılarını kendiniz temizlemeniz ve daha sonra NFS'yi yeniden başlatmanız gerekir. Bu yapıların bulunduğu yerler bir şekilde O / S'ye bağımlıdır.
NFS'yi önce sunucuda, sonra istemcilerde yeniden başlatmayı deneyin. Bu, dosya tanıtıcılarını temizleyebilir.
NFS sunucularının başka sunuculardan açılan dosyalarla yeniden başlatılması önerilmez. Bu, özellikle açık dosya sunucuda silinmişse sorunludur. Sunucu yeniden başlatılıncaya kadar dosyayı açık tutabilir, ancak yeniden başlatma sunucu tarafındaki bellek içi dosya tanıtıcısını kaldıracaktır. Böylece istemci artık dosyayı açamaz.
Sunucudan hangi bağların kullanıldığını belirlemek zor ve güvenilir değildir. showmount -a
Seçenek bazı etkin bağlar gösterebilir, ancak bunların tümünün rapor olmayabilir. Kilitli dosyaların tanımlanması daha kolaydır, ancak kilitlemenin etkinleştirilmesini gerektirir ve dosyaları kilitlemek için istemci yazılımına güvenir.
lsof
Bağlarda açık dosyaları olan işlemleri tanımlamak için istemcilerde kullanabilirsiniz .
NFS bağlarımda hard
ve intr
bağlama seçeneklerini kullanıyorum . Bu hard
seçenek ES'nin süresiz olarak yeniden denenmesine neden olur. Bu intr
seçenek, NFS G / Ç'nin tamamlanmasını beklerse işlemlerin öldürülmesine izin verir.
hard, intr
iyi bir tavsiye. Ancak, NFS'nin her denemede zaman aşımını iki katına çıkardığını unutmayın. Böylece en iyi settimeo=1
veretrans=5
benzeri. Bunun , NFS yeniden başlatıldıktan sonra NFS sunucunuza büyük yük getireceğini unutmayın . NFS hizmetinizi çok sık yeniden başlatmamaya çalışın;)