1

NFS 経由でバックアップしているサーバーにエクスポートする ZFS スナップショットを保持するサーバーがあるため、社内で作成されたカスタム アプリケーションを介して復元できます。問題は次のとおりです。

注: ZFS 組み込みの NFS を使用していないのには理由があります。使用するように言わないでください。

これはすべて NFS v4
です ホストは CentOS 6.2 を実行しています クライアントは CentOS 5.7 を実行しています

ホスト上でデフォルトで 8 つの NFS サーバーが開始されています。

NFS 共有を保持するバックアップ サーバーでは、ディレクトリ構造を必要なだけ深く走査し、予想されるすべてのファイルを確認できます。

クライアントでは、ファイルシステムをトラバースできますが、2 つ以上のディレクトリに移動すると、別のサーバーからのファイルが表示されることがあります。

次に例を示します。

[NFSSERVER /nfs/share]#  ls -l
total 60
drwx--x--x 30 root root 4096 Feb 25 00:15 20120225
drwx--x--x 30 root root 4096 Feb 26 00:05 20120226
drwx--x--x 30 root root 4096 Feb 27 00:06 20120227
.....

すぐ

[NFSCLIENT /app/backups]# ls -l
total 60
drwx--x--x 30 nobody nobody 4096 Mar  2 00:25 20120225/
drwx--x--x 30 nobody nobody 4096 Mar  2 00:25 20120226/
drwx--x--x 30 nobody nobody 4096 Mar  2 00:25 20120227/
......

すぐ

当然のことながら、これらは同一であることがわかります。

ここから問題が始まります。私が入ると:

[NFSCLIENT /app/backups/20120225/home] #  ls -l

クライアントでこの ls -l を実行すると、適切なファイルが表示されることもあれば、別のサーバーのホーム ディレクトリが表示されることもあります。

もし私が手に入れたら[NFSSERVER /nfs/share/20120225/home]# ls -l

この ls -l を実行すると、適切なファイルが表示されます。/nfs/share/ のフォルダーを削除すると、クライアントですぐに結果を確認できます。これらの「クロスマウント」ファイルシステムが表示されるのは、さらに深く掘り下げたときだけです。

これは私の /etc/exports の一部です (ホスト名は変更されています)

/nfs *.domain.com(fsid=0,ro,nohide,no_root_squash)
/nfs/server1/20120308 *.domain.com(ro,nohide,no_root_squash)
/nfs/server1/20120309 *.domain.com(ro,nohide,no_root_squash)
/nfs/server1/20120310 *.domain.com(ro,nohide,no_root_squash)
/nfs/server1/20120311 *.domain.com(ro,nohide,no_root_squash)
/nfs/server2/20120308 *.domain.com(ro,nohide,no_root_squash)
/nfs/server2/20120309 *.domain.com(ro,nohide,no_root_squash)
/nfs/server2/20120310 *.domain.com(ro,nohide,no_root_squash)
/nfs/server2/20120311 *.domain.com(ro,nohide,no_root_squash)
/nfs/server3/20120204 *.domain.com(ro,nohide,no_root_squash)
/nfs/server3/20120205 *.domain.com(ro,nohide,no_root_squash)
/nfs/server3/20120206 *.domain.com(ro,nohide,no_root_squash)
/nfs/server3/20120207 *.domaincom(ro,nohide,no_root_squash)

クロスマウントしている行を除く etc エクスポートからすべての行を削除し、エクスポート ファイルをリロードすると (つまり、/etc/exports にエントリを 1 つだけ残す)、クライアント マシン上の適切なディレクトリがすべて表示されます。

古い NFS ハンドルですか? デフォルトで稼働するNFSサーバーが増える? 他の何か?何か案は?私はこれで数週間頭を叩いています。

4

0 に答える 0