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

ポートマップがクライアントにインストールされていません

クライアント上のマウント コマンドの出力は正しいようです:

[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:/data ではなく vmappp04:/ をマウントしているように見えますが、これもこの問題の原因になります。

関連情報