加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

重启后“过时的NFS文件句柄”

发布时间:2020-12-13 18:25:33 所属栏目:Linux 来源:网络整理
导读:在服务器节点上,可以访问导出的文件夹.但是,重新启动(服务器和客户端)后,无法再从客户端访问该文件夹. 在服务器上 # ls /dataFolder1Forlder2 和/ etc / exports文件包含 /data 192.168.1.0/24(rw,no_subtree_check,async,no_root_squash) 在客户端 # ls /da
在服务器节点上,可以访问导出的文件夹.但是,重新启动(服务器和客户端)后,无法再从客户端访问该文件夹.

在服务器上

# ls /data
Folder1
Forlder2

和/ etc / exports文件包含

/data 192.168.1.0/24(rw,no_subtree_check,async,no_root_squash)

在客户端

# ls /data
ls: cannot access /data: Stale NFS file handle

我不得不说来自客户端的共享文件夹没有问题,但是在重新启动(服务器和客户端)之后,我看到了这条消息.

有办法解决这个问题吗?

解决方法

重新启动的顺序很重要.客户端可能导致这种情况后重新启动服务器.过时的NFS句柄表示客户端已打开文件,但服务器不再识别文件句柄.在某些情况下,NFS会在超时后清理其数据结构.在其他情况下,您需要自己清理NFS数据结构,然后重新启动NFS.这些结构所在的位置有些O / S依赖性.

尝试首先在服务器上重新启动NFS,然后在客户端上重新启动NFS.这可能会清除文件句柄.

建议不要使用从其他服务器打开的文件重新启动NFS服务器.如果在服务器上删除了打开的文件,则这尤其成问题.服务器可以保持文件打开,直到重新启动,但重新启动将删除服务器端的内存中文件句柄.然后客户端将无法再打开该文件.

确定从服务器使用了哪些安装是困难且不可靠的. showmount -a选项可能会显示一些活动的挂载,但可能不会报告所有挂载.锁定的文件更容易识别,但需要启用锁定并依赖客户端软件来锁定文件.

您可以在客户端上使用lsof来标识在挂载上打开文件的进程.

我在NFS挂载上使用hard和intr挂载选项.硬选项会导致IO无限期地重试. intr选项允许进程在等待NFS IO完成时被终止.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读