nfs 问题:共享大小似乎不正确。在共享上创建的文件在服务器上不可见

nfs 问题:共享大小似乎不正确。在共享上创建的文件在服务器上不可见

我已经在 NFS 服务器上设置了共享。我可以毫无错误地挂载共享。“df”报告的共享大小比服务器上的共享大小小得多,例如,服务器报告 1 TB,但从客户端来看,共享大小为 3.8 G。我可以从客户端在 nfs 共享上创建一个测试文件,并且这个测试文件在所有客户端上都可见,但是当我转到服务器上的共享目录时,该文件不存在。同样,服务器上预先存在的文件对任何客户端都不可见。在服务器上,我运行了命令“updatedb”并搜索了新创建的测试文件;但是,在服务器上的任何地方都找不到它。因此,我正在访问一些共享,我可以从客户端在共享上创建文件,但在服务器上的任何地方都看不到这些文件。我在 /var/log/messages 中没有看到与 nfs 相关的重大错误。服务器是 CentOS 5.8。客户端是 CentOS 6.4。服务器和客户端上的 Iptables 都已关闭以进行测试。

我没有发现名称解析或 DNS 存在任何问题。

服务器:

[root@vmappp04 /]# cat /etc/exports
/data       192.168.1.0/24(fsid=0,rw,sync,no_root_squash)

[root@vmappp04 /]# rpm -qa |grep nfs-utils
nfs-utils-1.0.9-66.el5
nfs-utils-lib-1.0.8-7.9.el5
nfs-utils-lib-1.0.8-7.9.el5

[root@vmappp04 /]# rpm -qa |grep nfs4-acl-tools
nfs4-acl-tools-0.3.3-3.el5

[root@vmappp04 /]# rpm -qa |grep portmap
portmap-4.0-65.2.2.1

服务器上不存在 hosts.allow 或 hosts.deny 文件。

客户:

cat /etc/fstab
vmappp04:/  /data/filer_01  nfs4    noauto,defaults 0 0 

[root@vmappp11 ~]# rpm -qa |grep nfs-utils
nfs-utils-lib-1.1.5-6.el6.x86_64
nfs-utils-1.2.3-36.el6.x86_64

[root@vmappp11 ~]# rpm -qa |grep nfs4-acl-tools
nfs4-acl-tools-0.3.3-6.el6.x86_64

客户端未安装 portmap

客户端上的 mount 命令的输出看起来正确:

[root@vmappp11 ~]# showmount -e vmappp04
vmappp04:/ on /data/filer_01 type nfs4 (rw,addr=192.168.1.16,clientaddr=192.168.1.84)

vmappp04 的导出列表:

[root@vmappp11 ~]# showmount -d vmappp04
/data 192.168.1.0/24

vmappp04 上的目录:

[root@vmappp11 ~]# showmount -a vmappp04

vmappp04 上的所有挂载点:

[root@vmappp11 ~]# showmount -a 192.168.1.16

192.168.1.16上的所有挂载点:

我在服务器和客户端尝试了各种排列组合。不确定如何继续,请提供建议;非常感谢您的帮助。

答案1

我不清楚服务器和客户端上挂载的文件系统的层次结构,但您必须小心挂载目录和子目录,以及何时何地挂载它们。在我看来,您挂载的东西不正确。

挂载到子目录或父目录将产生您所看到的结果。您可能正在服务器上的挂载点“下”保存文件。例如,如果 /data 挂载到磁盘,则您通过客户端保存的文件将转到挂载 /data“之前”存在的 /data,即 / 上。服务器上的 / 有 3.8 G 吗?

您不会想要挂载挂载点的子目录,因为它们的处理方式不同。您应该分别导出要挂载的每个目录。

此外,根据该 fstab,您似乎正在安装 vmappp04:/ 而不是 vmappp04:/data - 这也会导致这种情况。

相关内容