私のNFSサーバーはどのバージョンのNFSを使用していますか?

私のNFSサーバーはどのバージョンのNFSを使用していますか?

私のコンピュータにNFSファイルシステムをマウントしています。私のサーバーがどのNFSプロトコルバージョンを使用しているかをどうやって確認しますか? NFS サーバーシステムへのアクセス権はありませんが、クライアントシステムへのルート権限があります。

サーバーが使用している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 v4のように、サーバーがサポートするNFSプロトコルのバージョンが何であるかを教えてください。

答え1

このnfsstat -cプログラムは、使用されている実際のNFSバージョンを表示します。

実行すると、rpcinfo -p {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を提供していることを示しています。

答え2

オペレーティングシステムとバージョンによって確認する方法が異なる場合があります。

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

答え3

/etc/nfsmount.conf基本バージョンとサポートされているバージョンに関する情報を開いて取得できます。

関連情報