2009年7月27日月曜日

NFSのError

NFS: short packet in readdir reply!
というErrorが出ていた。気になったので調べて見ると
■nfs problem: hp-server --- linux 2.4.13 client, ooops
というWebを発見。気になる文章はこれ。

Kernel version: 2.4.13 (up and smp), Trond's seekdir patch, ext3 patch
Hardware: P4 1700 (1 and 2), 2 GB RAM.
Compiled with RedHat 7.1 gcc (2.96-85)
nfs-Server: HP-UX 10.20

Without the nfs patch I had a lot of trouble with Irix servers - now Irix,
NetApp, Aix, Linux... nfs- servers are fine, but connecting to a HP server
leads to statements like this in the syslog:
NFS: short packet in readdir reply!

Even worse: Accessing one particular directory (using ls, find etc) leads
to a segmentation fault in the accessing process. The machine stays up and
running, but some other processes (without relationship to nfs mount) die a
sudden death as well.

There is nothing special about the directory on the nfs server.
There is no problem with Linux 2.2.14-5.0smp. I can check with other 2.4
versions if necessary. The problem is independent of the nfs version.

さて意訳。間違ってたら指摘をお願いします。
Kernel version: 2.4.13 (up and smp), Trond's seekdir patch, ext3 patch
Hardware: P4 1700 (1 and 2), 2 GB RAM.
Compiled with RedHat 7.1 gcc (2.96-85)
nfs-Server: HP-UX 10.20

Patch未適用下のIrixサーバで多数の問題に遭遇した。
Irix、NetApp、Aix、Linux、NFS-Server等は正常に動作しているが、HPのサーバへ接続しようとするとシステムログにこの様な文言が残っている。
NFS: short packet in readdir reply!
酷い時には、とあるDirectoryにAccessするとそのAccessをしたProcessがSegmentation Faultを起こしてしまう。
サーバ自体は問題なく動いているが、NFSマウントとは無関係な他のProcessまでもが同じように突然死んでしまう。
問題を起こしたDirectoryやNFSServerに対して特に変わった事はやっていない。
私は2.2.14-5smp利用下ではこの問題に遭遇しなかった。もし必要であれば他の2.4kernelでも試す事は出来る。


でこの人に対するレスがこれ
That particular Oops should already be fixed in 2.4.14.

そのバグは2.4.14kernelで直ってるぜ!

うーむ・・・。
でそれに問題投げた人がレスしてる。
Thanks, I've tried 2.4.15pre5 (+ seekdir patch) now and could not
reproduce the Ooops with the HP nfs server. But still: The Kernel
complains about: "NFS: short packet in readdir reply!" when I access
any directory provided by a HP-UX 10.20 nfs-server (using nfs2 |
nfs3). I dont' notice any strange behaviour other than that, though.

But a new problem emerged: Copying from a linux (2.4.13 | 2.4.15pre5)
nfs-client onto an AIX nfs-server doesn't work. About 800kb are copied
then the cp command just hangs. Syslog says:
Nov 16 11:51:12 capc20 kernel: nfs: server caes04 not responding, still trying
This problem only occures with nfs3, and not with nfs2.

意訳。
2.4.15pre5 (seekdir修正適用)環境で試してみたら、この問題は起きなかった。
気持ち悪い事にそれでもHP-UXでNFS2/3を使ったNFS-ServerDirectoryにAccessした際の「NFS: short packet in readdir reply!」というエラーログは消えなかった。

なお別のErrorが発生した。
NFS ClientであるLinux(2.4.13 | 2.4.15pre5)からAIXのnfs-serverへ接続すると動かない。例えば800KBのファイルをコピーするとハングアップしてしまい、シスログには下記の様なErrorが残っている。
Nov 16 11:51:12 capc20 kernel: nfs: server caes04 not responding, still trying
このErrorはNFS3を使った時に起き、NFS2を使うと起きない。
何かそう難しくない修正方法を知っているなら教えて欲しい。


という訳でNFSの通信をNFSのver2に制限する方法を探す。
これだ。
■[ロ] NFSのバージョン設定
コメントを投稿