D.W*_*.W. 14 version configuration nfs
我正在我的机器上安装 NFS 文件系统。如何确定服务器使用的 NFS 协议版本?我无权访问 NFS 服务器机器,但我的客户端机器上有 root 用户。
有什么我可以在我的客户端机器上运行的东西来识别服务器正在使用什么版本的 NFS 协议,或者它支持什么版本?
我无法在/var/log/messages内核调试输出 ( dmesg) 中找到任何有用的信息。
我试过 running nfsstat,但我不确定它是否给了我任何有用的信息。但是,当我运行nfsstat -s请求有关服务器的信息时,我看不到任何有用的信息:
# nfsstat -s
Server rpc stats:
calls badcalls badfmt badauth badclnt
0 0 0 0 0
Run Code Online (Sandbox Code Playgroud)
当我运行nfsstat -c请求有关客户端的信息时,我确实看到了一些有关 的信息Client nfs v3,但我不确定如何解释它。这是否告诉我有关客户端计算机和 NFS 服务器之间使用的协议的任何信息?这是否意味着我目前使用的是 NFS 协议的 v3?它是否告诉我有关服务器支持的 NFS 协议版本(例如 NFS v4)的任何信息?
roa*_*ima 21
该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
...
Run Code Online (Sandbox Code Playgroud)
这表明我的 NFS 服务器(localhost在本例中)通过 UDP 和 TCP 提供 NFS 协议的第 2、3 和 4 版。
小智 6
根据您的操作系统和版本,可能有不同的检查方法。
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
Run Code Online (Sandbox Code Playgroud)
但你可以肯定
# 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
Run Code Online (Sandbox Code Playgroud)
这显然是相同的输出。
它显示vers=3在服务器上,并且mountvers=3.