自分のマシンにNFSファイルシステムをマウントしています。サーバーが使用するNFSプロトコルのバージョンを確認するにはどうすればよいですか? NFSサーバーマシンにアクセスできませんが、クライアントマシンにはrootがいます。
サーバーで使用されているNFSプロトコルのバージョン、またはサポートされているバージョンを識別するためにクライアントマシンで実行できるものはありますか?
/var/log/messages
またはカーネルデバッグ出力(dmesg
)で有用な情報を見つけることができませんでした。
nfsstat
を実行してみましたが、有用な情報が得られるかどうかはわかりません。ただし、nfsstat -s
を実行してサーバーに関する情報を要求すると、何も表示されません。
# nfsstat -s
Server rpc stats:
calls badcalls badfmt badauth badclnt
0 0 0 0 0
nfsstat -c
を実行してクライアントに関する情報を要求すると、Client nfs v3
に関する情報が表示されますが、これを解釈する方法がわかりません。これは、クライアントマシンとNFSサーバー間で使用されているプロトコルについて何か教えてくれますか?現在NFSプロトコルのv3を使用しているということですか?サーバーがサポートするNFSプロトコルのバージョン(NFS v4など)について何か教えてくれますか?
nfsstat -c
プログラムは、実際に使用されているNFSバージョンを表示します。
rpcinfo -p {server}
を実行すると、serverがサポートするすべてのRPCプログラムのすべてのバージョンが表示されます。私のシステムでは、次の出力が得られます。
$ rpcinfo -p localhost
program vers proto port
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
...
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
...
これは、NFSサーバー(この例ではlocalhost
)がUDPおよびTCP全体でNFSプロトコルのバージョン2、3、および4を提供していることを示しています。
ご使用のOSとバージョンによっては、確認方法が異なる場合があります。
nfsstat:
# nfsstat -m
/mnt/share from 10.0.0.1:/mnt/share
Flags: rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.0.1,mountvers=3,mountport=30924,mountproto=udp,local_lock=none,addr=10.0.0.1
しかし、あなたは確かにできます
# grep nfs /proc/mounts
10.0.0.1:/mnt/share /mnt/share nfs rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.0.1,mountvers=3,mountport=30924,mountproto=udp,local_lock=none,addr=10.0.0.1
これは明らかに同じ出力です。
それが示している vers=3
サーバー上、およびmountvers=3
。