NFS設定でロックファイルは生成されません。

NFS設定でロックファイルは生成されません。

私は最近私たちの研究グループのための新しいファイルサーバーをセットアップしました。以前のバージョンではSuSE Linuxを実行していましたが、これは小さなハードドライブと遅いシステムにもかかわらずうまく機能しました。クライアントはほとんどNFS共有をマウントするGentooシステムですautofs。コンピュータのホームディレクトリはファイルサーバーにあります。

新しいファイルサーバーは、特定の部門のコンピュータで実行される仮想マシンですDebian squeeze。設定後(複数回)重大な問題が発生した場合、またはrpc.statd複数rpc.lockdのシステムにホームディレクトリがマウントされている場合、応答はありません。問題を解決する2.6.32と思われるカーネルを更新しました。3.2しかし、まだロックファイルが作成されていないようです。

たとえば、クライアントのxdmデスクトップマネージャは、NFS共有のホームディレクトリにファイルを作成するのではなく、ローカルの.Xauthority場所に置き換えられます。/tmpまた、ロックされたファイルなどを使用する重いプログラムは、Firefox, Thunderbird, Libreofficexdmログインのように少し遅くなる可能性があります。

私たちは(少なくとも私の考えではそう思います)NFS4を使用していますが、私が知っている限りはもう必要ありませんrpc.lockd。カーネルの更新後にこれに関連する唯一のエラーメッセージは次のとおりです。

sm-notify[540]: nsm_parse_reply: [0x515dce2e] RPC status 1

インターネットでは、これが何を意味するのかを見つけることができません。サーバーは(現在)まったく保護されていません/etc/default/nfs-kernel-server

RPCNFSDCOUNT=32
RPCNFSDPRIORITY=0
RPCMOUNTDOPTS="--manage-gids -p 32767"
NEED_SVCGSSD=
RPCSVCGSSDOPTS=

クライアントにはhosts.allowサーバーのエントリが含まれています。rpcbind

これに関連するいくつかの質問があります。

  • 小さなPythonまたはbashスクリプトを使用して、NFS共有でロックファイルの生成が正しく機能することをどのように確認できますか?
  • 私のクライアントがどのNFSバージョンを使用しているのか、どうすればわかりますか?
  • ログファイルに何も表示されない場合は、NFSエラーをどのように追跡できますか?
  • Xauthority上記のアプリケーションに問題があるのはなぜですか?

答え1

解決したと思います。 xdmはこれをルートとして生成するため、.XauthorityNFSエクスポートのオプションによってこれを回避できます。このオプションを削除すると、顧客にぴったりのエフェクトをno_root_squash作成できます。.Xauthority

答え2

私はここであなたの友人だとtcpdump(8)思います。strace(1)

tcpdumpできる:

  • NFSプロトコルバージョンの表示
  • 誰が誰と話しているかを教えてください(問題解決のため)。
  • また、アプリケーションログメッセージが不足している場合に何が間違っているのかを知らせます。

strace正しいプロセス(シェルなど)に接続している場合は、システムコールとシグナルを追跡して、どのコールが試行されたかを確認できます。sshdこれは.Xauthority問題に関するヒントを与えることができます。fopen()

tcpdump -Aアプリケーションが機能せず(NFSでは機能せず、クライアント/サーバーのトラブルシューティングでは機能しない場合)、理由を説明していないか、ログファイルに「予期しないエラー」などの巧妙な内容が表示されることを何度も経験しました。サーバーからのエラーメッセージ(クライアントでは単に無視されます)なので、これらのメッセージは、直接構築していないアプリケーション固有の問題を処理するtcpdumpときに非常に重要です。strace

関連情報